使用 du -sh * 命令时如何根据子目录的大小进行排序? [关闭]

Posted

技术标签:

【中文标题】使用 du -sh * 命令时如何根据子目录的大小进行排序? [关闭]【英文标题】:how to sort according to size of subdirectories when using du -sh * command? [closed] 【发布时间】:2012-08-15 23:29:56 【问题描述】:
du -sh *
275M    fusionforge_g
50M     git
99M     httpd
181M    php-doc
4.0M    pirate3
3.4G    qt
1.1M    vim-addon-manager
126M    wp-and

这个输出现在乱序了,如何让这个输出按照子目录的大小排序?

@vstm我的核心util版本低于7.5,所以https://serverfault.com/questions/62411/how-can-i-sort-du-h-output-by-size中的解决方案无法解决我的问题。

rpm -qa | grep core
coreutils-5.97-19.el5
policycoreutils-1.33.12-14.2.el5

@列昂尼德·沃尔尼茨基 使用 -h 选项时 sort -nr 不起作用:(

du -sh * | sort -nr
275M    fusionforge_g
181M    php-doc
126M    wp-and
99M     httpd
50M     git
4.0M    pirate3
3.4G    qt
1.1M    vim-addon-manager

【问题讨论】:

unix.stackexchange.com ? How can I sort du -h output by size 同意关闭(我也写了一个可爱的答案!) @vstm 我的核心util版本低于7.5 【参考方案1】:

类似这样的:

  command du -sh */ | sort -nrh

【讨论】:

不行,我的core util版本低于7.5 我忘记了-sdu 选项,但除此之外它应该适用于任何coreutils 版本。 command - 是内置的 bash。你使用 bash 还是别的什么?您可以尝试不使用它,它只是删除du 的别名(如果有的话)。试试这个:du -s */ | sort -nr du -s 不是人类可读的,我需要 du -sh:( 你的排序支持-h吗? 是的,但是 du -sh * | sort -nr 出现故障:( sort -nr 在使用 -h 选项时不起作用:( 我在上面粘贴了详细信息:)

以上是关于使用 du -sh * 命令时如何根据子目录的大小进行排序? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

du命令

每天学一个 Linux 命令(46):du

Linux如何查看目录占用空间大小?

28.du命令

linux命令:du

Linux之du命令