使用ls列出目录及其总大小

耗尽温柔 提交于 2019-12-21 14:27:29

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

是否有可能在Unix中使用ls来列出子目录及其所有内容的总大小,而不是通常的4K(我假设)只是目录文件本身? IE

total 12K
drwxrwxr-x  6 *** *** 4.0K 2009-06-19 10:10 branches
drwxrwxr-x 13 *** *** 4.0K 2009-06-19 10:52 tags
drwxrwxr-x 16 *** *** 4.0K 2009-06-19 10:02 trunk

在搜索了这些手册页后,我空洞地说。


#1楼

看看du命令


#2楼

尝试类似的东西:

du -sh *

简短版本:

du --summarize --human-readable *

说明:

duD isk U sage

-s :显示每个指定文件的摘要。 (相当于-d 0

-h :“人类可读”输出。 使用单位后缀: B yte, K ibibyte(KiB), M ebibyte(MiB), G ibibyte(GiB), T ebibyte(TiB)和P ebibyte(PiB)。 (BASE2)


#3楼

我总是使用du -sk-k标志显示文件大小,以千字节为单位)。


#4楼

你想要的命令是'du -sk'du =“磁盘使用”

-k标志为您提供以千字节为单位的输出,而不是磁盘扇区的du默认值(512字节块)。

-s标志仅列出顶级目录中的内容(即默认情况下的当前目录或命令行中指定的目录)。 在这方面,du具有相反的ls行为,这很奇怪。 默认情况下,du将递归地为您提供每个子目录的磁盘使用情况。 相反,ls只会在指定目录中提供列表文件。 (ls -R为您提供递归行为。)


#5楼

du -sk * | sort -n du -sk * | sort -n将按大小对文件夹进行排序。 想要清理空间有帮助..

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!