排序文件夹大小不起作用-RedHat Linux
我使用du-h--max depth=2来获取文件夹列表,按大小最多向下两级。问题是我无法按最大文件夹大小对它们进行排序 通常,这可以通过使用du-k | sort-nr*实现,但我不能在这里使用它,因为它与--max depth=2参数冲突(s参数) 有没有人可以建议是否有其他方法来实现这一点。不过我需要保持列表的可读性排序文件夹大小不起作用-RedHat Linux,linux,redhat,Linux,Redhat,我使用du-h--max depth=2来获取文件夹列表,按大小最多向下两级。问题是我无法按最大文件夹大小对它们进行排序 通常,这可以通过使用du-k | sort-nr*实现,但我不能在这里使用它,因为它与--max depth=2参数冲突(s参数) 有没有人可以建议是否有其他方法来实现这一点。不过我需要保持列表的可读性 478M var 500K usr/sdfijf/best 568K user/dbuser 56M etc/basic/linux 68K var/redhat
478M var
500K usr/sdfijf/best
568K user/dbuser
56M etc/basic/linux
68K var/redhat
9.0K user/aunix
我有以下两个专栏,希望能按照人类可读的文件夹大小对它们进行排序,最大的文件夹位于顶部(基本上是降序和逆序排列的)
谢谢,
Morgan使用
-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
但不确定它是否有效没有Carlpett,当我这样做时,它给了我一个错误:“sort:invalid option--h,请尝试‘sort--help’以获取更多信息。”我认为问题是我们不能同时使用--max depth和其他参数,比如-h。不过还是要谢谢你的帮助@用户94072:否,错误是从排序报告的,因此您的排序
版本可能没有-h
标志。您可以尝试用--sort=human numeric
或--human numeric sort
替换-h
中的-h
,看看这些是否是受支持的表达方式。另外,您可以发布sort--version
的输出吗?嗨,Carl,its-sort(GNU coreutils)5.97版权(C)2006免费软件基金会,Inc.:用户:OK,人类可读格式已在7.5版本中(在2009年底发布)。如果由于某种原因无法升级,那么您将不得不求助于一些解决方法,例如anonGlad建议的帮助!但正如carlpett提到的,这是一个解决办法。卡尔佩特提供的解决方案肯定更好;此解决方法的速度要慢得多,因为它涉及重复的du操作