我正在写一个bash脚本,它显示了我的raspberry pi linux盒上最大的文件
如何抑制lost+found等目录中读取错误的控制台输出?
du / -Sh | sort -rh | head -n 15
示例输出:
du: cannot access `/proc/2884/task/2884/fd/4': No such file or directory
du: cannot access `/proc/2884/task/2884/fdinfo/4': No such file or directory
du: cannot access `/proc/288
我正在尝试找到最好的方法来获取一个目录及其子目录中所有文件所使用的空间。有很多像这样的帖子:Calculating a directory's size using Python? 但是,在该线程中推荐的递归文件计数方法和linux du -sh命令给出的结果大相径庭。在只有两个文件的同一目录上,如果我使用任何方法单独计算文件大小,则会得到: 864字节 使用linux du -hs命令,我得到了12K字节! 这是一个巨大的差异,有人知道为什么吗?
我想我的指挥官有点糊涂了。
% du -shc DIR ...
...
6123941496 total
% du -shc DIR ...
...
6.1G total
% du -sc --si DIR ...
...
6.6G total
我试过给LANG=C并在电子表格中反复检查结果。看起来-h已经使用了1000 (-si)的幂输出,而-si给出了错误的答案。我认为正确的答案应该是-h为5.7G,-si为6.1G。那么这里发生了什么?
% du --version
du (GNU coreutils) 8.20
...
% uname -a
Linux XX