你肯定会遇到这样的时候, 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  行不行?  当然不行了! 不信你试试, 然后就知道原因了哈。

  



本文转载:CSDN博客