本文主要是介绍按大小统计目录、文件大小的命令:du -a --max-depth=1 | sort -rn | awk '{print $2}' | xargs du -sh,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
你肯定会遇到这样的时候, linux机器上的磁盘太满了, 想删除一些没用的。 好, 那先用df -h命令查下磁盘情况。 问题是, 怎么知道哪些目录占据了较大的空间呢? 直接用
du -a --max-depth=1 | sort -rn | awk '{print $2}' | xargs du -sh
搞起吧!
解释下:
du是disk usage
-a表示不仅仅统计目录, 也统计文件。 如果不要这个参数, 则仅仅统计目录, 忽略文件
--max-depth=1表示仅仅统计当前目录, 不去具体统计子目录
sort -rn是排序
awk '{print $2}' 是取第二列, 也就是文件名
xargs du -sh是将前面的结果再du一下, 并以sh的形势呈现, s是求和, h是human readabe, 比如3G, 50M 这样的。
对了, 如果当面目录是纯文件, 别忘了用我们之前介绍过得 ll -hrS 命令。
思考个问题: du -ah --max-depth=1 | sort -rn 行不行? 当然不行了! 不信你试试, 然后就知道原因了哈。
这篇关于按大小统计目录、文件大小的命令:du -a --max-depth=1 | sort -rn | awk '{print $2}' | xargs du -sh的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!