du -sh * , 隐藏使用次数为 0 的目录

du -sh * , 隐藏使用次数为 0 的目录

这是我当前的输出。

475M    directorya
0       directoryb
0       directoryc
520M    directoryd
42G     somefolder

这就是我正在尝试做的事情。

  1. 如何隐藏0次使用的目录?本质上只显示 >0 的目录。
  2. 如何按升序/降序排序?

答案1

du -sh /directory/* | awk '$1 != "0" {print $0}' | sort -h

的输出du -sh /directory/*将在第一列中显示其中包含的目录的大小,在第二列中显示目录本身。

上面的命令du -sh在目录上运行,然后告诉awk仅打印第一列(大小)不等于 0 的行,然后按人类可读的顺序对输出进行排序。

答案2

您可以使用 grep 按以下方式获得结果

du -sh * | grep -v '^0' | sort -h

-v 反转匹配项,'^0' 查找以 0 开头的行

相关内容