我有一个分辨率列表(移动设备,显示器等),我想使用bash/vim按分辨率对它们进行排序
我有(未订购):
1024 x 480
96 x 120
1024 x 600
100 x 120
800 x 1280
64 x 98
640 x 320
64 x 128
640 x 960
800 x 480
80 x 120
然后当我这样做时:
cat file | sort -u
我得到:
100 x 120
1024 x 480
1024 x 600
640 x 320
640 x 960
64 x 128
64 x 98
800 x 1280
800 x 480
80 x 120
96 x 120
为什么它不像这样排序,我该怎么办?
64 x 98
64 x 128
80 x 120
96 x 120
100 x 120
640 x 320
640 x 960
800 x 1280
800 x 480
1024 x 480
1024 x 600
最佳答案
您可以使用
sort -n -k1 -k3 file
这会根据数字前缀进行排序,因此您将获得按第一个数字排序的列表
这产生
64 x 98
64 x 128
80 x 120
96 x 120
100 x 120
640 x 320
640 x 960
800 x 480
800 x 1280
1024 x 480
1024 x 600
关于bash排序以解决问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8657164/