如何在Linux下的目录下的所有文件做“du”?

这是我试过的:

[demo@ ~]# ll /usr/local/apache2/logs/|xargs |du -hm - du: cannot access `-': No such file or directory 

我想看看每个文件占用的空间大小,单位是m

如何做到这一点正确的方式?

我假设llls -l的别名,在这种情况下出了什么问题

 du -hm /usr/local/apache2/logs/* 
 du -s /usr/local/apache2/logs/* | sort -rn | cut -f2 | xargs -d '\n' du -sh 

好的,不完全是你所要求的,但是tree -fis或者tree -fih可能会帮助你一点,是一个小而紧凑的解决scheme。 🙂

第一个命令输出recursion目录树,同时显示文件大小(以字节为单位),第二个是相同的,但具有“人类可读”输出,以千字节,兆字节,千兆字节为单位显示该文件的大小。

你是不是想下降到子目录?

怎么样:

 find . -type f -maxdepth 1 |xargs du -m 

如果需要的话pipe道到“sorting-n”。