linux - 列出按大小降序排列的所有目录

标签 linux bash shell sh

我需要按大小降序对当前目录的所有目录进行排序。

我尝试遵循

du -sh * |排序-rg

它按大小列出所有文件夹,但它只是按值按文件夹大小列出。但它不是排序纠正。 100 MB 目录应列在 200KB 之前。

任何帮助将不胜感激。

最佳答案

-g 用于 float 。对于人类可读的输出,请使用人类可读的排序:

du -sh * | sort -rh

如果您有 coreutils 中的 numfmt 实用程序,则可以使用带有 numfmt 格式的数字排序:

du -B 1 -s * | sort -rn | numfmt --to=iec -d$'\t' --field=1

关于linux - 列出按大小降序排列的所有目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51443182/

相关文章:

php - 如果从 CLI 运行,如何绕过 PHP 脚本中的安全检查?

c - 终端背景颜色并不总是使用 "\033[0m"正确重置

bash - shell 脚本 : replace contents

linux - 用于删除文件中单词的 Shell 脚本

linux - 如何使用 shell 脚本重新格式化 csv 文件中的数据

c - 信号量相关 - smtctl 使用 IPC_RMID 失败,参数无效

linux - 当我使用 {} 时,Find 会创建一个文件

Android 开发 - 安装出错?

linux - 替换所有\\with/in 文件和子目录

shell - 我们如何才能使 ls --color = 始终在 Sun Os 中工作