[英]How to sort a file in unix both alphabetically and numerically on different fields?
请不要认为这是“在unix中排序字母数字数据”问题的重复...我看了其他答案,并认为我的情况有点不同!
我有这样的数据:
A 192
D 112
D 188
C 091
A 281
B 919
...我想按第1列(按字母顺序)排序,然后按第2列排序(按数字排序)。 我试过用:
sort -n -k1,2
...但是这给了我正确的第一个字段排序,但是第二个字段的排序错误(1000,1002,1003,10,1 ...而不是1,10,1000,1002,1003)。
有人可以建议如何按照我喜欢的方式对这两列进行排序吗?
尝试使用这样: -
sort -k1,1 -k4,4n
- -n:使程序根据数值排序
- -k opts:使用给定的列号对数据/字段进行排序。 例如,选项-k 2使用第二个进行程序排序
数据列。 选项-k 3,3n -k 4,4n对每列进行排序。 第一
它将排序第3列,然后排序第4列。
这应该工作:
sort -t "," -k1,1 -k2n,2 file
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.