我使用du -h——max-depth=2来获取大小最多2级的文件夹列表。问题是我无法在最大文件夹大小下对它们进行排序。
通常这可以通过使用du -k | sort -nr *来实现,但我不能在这里使用它,因为它(-s参数)与——max-depth=2参数冲突。
有人可以建议是否有任何其他方法来实现这一点。我需要保持列表在人类可读的格式。
478M var
500K usr/sdfijf/best
568K user/dbuser
56M etc/basic/linux
68K var/redhat
9.0K user/aunix
我有以下两列,并期望按照人类可读的文件夹大小对它们进行排序,最大的文件夹在顶部(因此降序和倒序基本上)
谢谢,摩根
对sort
使用-h
标志:
-h, --human-numeric-sort
compare human readable numbers (e.g., 2K 1G)
所以du -h --max-depth=2 | sort -hr
。
其中一种方法可能是du -k --max-depth=2 | sort -nr |awk '{ print $2}'|xargs du -sh
,但不确定是否有效