我有一个分辨率列表(移动设备,监视器等...),我想通过使用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
Run Code Online (Sandbox Code Playgroud)
然后当我这样做:
cat file | sort -u
Run Code Online (Sandbox Code Playgroud)
我得到:
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
Run Code Online (Sandbox Code Playgroud)
为什么它不像这样排序,我怎么能这样做?
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
Run Code Online (Sandbox Code Playgroud)
Mah*_*eTo 16
您可以使用
sort -n -k1 -k3 file
Run Code Online (Sandbox Code Playgroud)
这是基于数字前缀的排序,因此您将获得按第一个数字排序的列表
这会产生
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
Run Code Online (Sandbox Code Playgroud)