我运行命令没有成功获得目录的大小(文件内属于一个目录的大小)

ls -lSrh

我只得到千位的目录的大小,而其内容是不止于此。

你怎么能列出目录,包括其在数含量的大小的 LS 的?

有帮助吗?

解决方案

du -sh directory_name

ls是想给你的目录中的进入的,而不是目录内容的大小。根据我man ls的快速脱脂似乎没有成为一个令ls俯冲下来,并计算目录的大小(最有可能的,因为这将是一个昂贵的操作)。

其他提示

如果你想获得目录的大小,你可以使用

du -sh

du -hs是伟大的,直到你有一个大的目录。

例如,如果您存储缓存文件(例如,用于Rails的文件系统缓存存储)或上传的文件,......与分区管理的模式,如“缓存/ 123 /789分之456/ real_files”和你有很多人,du正在永远,最终阻止所有IO

我没有更好的解决办法,但是这是要考虑你在高峰时间生产服务器上运行此之前。

建筑肖恩光明的答案,你可以做以下(在bash)

for each in $(echo */ | sed "s/ /\n/g" | sed "s/\///g");  do du -hs "$each"; done;

这将获得在当前目录中的所有目录的完整目录的内容。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top