我如何才能按人类可读的大小从大到小排序显示 unix 目录中的文件?
我试过
du -h | sort -V -k 1
但它似乎不起作用。
答案1
ls(1)
/sort
:
-S sort by file size
答案2
$ ls -lhS
-l use a long listing format
-h with -l, print sizes in human readable format (e.g., 1K 234M 2G)
-S sort by file size
答案3
如果您有合适的sort
版本,您可以简单地使用:
du -h | sort -rh
我的是
$ sort --version
sort (GNU coreutils) 8.12
答案4
ls -S
对我来说,这不是操作系统上的选项。以下方法有效:
ls -l | sort -k 5nr
它们的“关键”是指定要排序的列(明白了,“关键”)。上面我指定了-k 5nr
含义按第 5 列排序,其大小为 (5),按降序 (n) 计算数字 (n)
参考排序文档了解更多信息