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

nag*_*547 7 linux bash shell sh

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

我尝试跟随

du -sh * | sort -rg

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

任何帮助都将非常重要。

Kam*_*Cuk 10

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

du -sh * | sort -rh
Run Code Online (Sandbox Code Playgroud)

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

du -B 1 -s * | sort -rn | numfmt --to=iec -d$'\t' --field=1
Run Code Online (Sandbox Code Playgroud)


Pau*_*ges 5

我更喜欢直接比较字节。

du -b * | sort -nr
Run Code Online (Sandbox Code Playgroud)

du -b报告字节。

sort -n按数字排序。显然,-r是逆转。

我的 /tmp 在清理之前 -

104857600       wbxtra_RESIDENT_07202018_075931.wbt
815372  wbxtra_RESIDENT_07192018_075744.wbt
215310  Slack Crashes
148028  wbxtra_RESIDENT_07182018_162525.wbt
144496  wbxtra_RESIDENT_07182018_163507.wbt
141688  wbxtra_RESIDENT_07182018_161957.wbt
56617   Notification Cache
20480   ~DFFA6E4895E749B423.TMP
16384   ~DF543949D7B4DF074A.TMP
13254   AdobeARM.log
3614    PhishMeOutlookReporterLoader.log
3448    msohtmlclip1/01
3448    msohtmlclip1
512     ~DF92FFF2C02995D884.TMP
28      ExchangePerflog_8484fa311d504d0fdcd6c672.dat
0       WPDNSE
0       VPMECTMP
0       VBE
Run Code Online (Sandbox Code Playgroud)