![根据 1 列对文件进行排序](https://linux22.com/image/25010/%E6%A0%B9%E6%8D%AE%201%20%E5%88%97%E5%AF%B9%E6%96%87%E4%BB%B6%E8%BF%9B%E8%A1%8C%E6%8E%92%E5%BA%8F%20.png)
可能的重复:
如何按大小对 du 输出进行排序?
我有一个从输出生成的文本文件
du --max-depth 1 -h > sizeOfHomeFolder.txt
其内容格式如下:
$ cat sizeOfHomeFolder.txt | head
776K ./Expensemanager
8.0K ./workspace
4.0M ./mysql-tutorial
3.6M ./temp
26M ./Desktop
4.0K ./Ubuntu One
4.0K ./Photos
4.0K ./Public
我需要根据第一列(即大小)对该文件进行排序。
如何使用sort
或sed
或任何其他常见的 UNIX 实用程序来执行此操作?
答案1
如果你的 GNU 版本不太旧sort
,你可以这样做
sort -k 1,1h < input.txt
-h
用于“人类”排序,需要知道 1.0M 确实大于 512K。