我有一个输出这样的程序:
0: test_func() 4x1024 0.2260167
0: test_func() 4x128 0.020995
0: test_func() 4x2048 0.330319
0: test_func() 4x256 0.024929
0: test_func() 4x4096 1.329865
0: test_func() 4x512 0.056119
0: test_func() 4x64 0.004869
0: test_func() 4x8192 3.288312
0: test_func() 16x1024 0.778160
0: test_func() 16x128 0.084252
0: test_func() 16x2048 1.671658
0: test_func() 16x256 0.190282
0: test_func() 16x4096 5.664730
0: test_func() 16x512 0.312114
0: test_func() 16x64 0.036087
0: test_func() 16x8192 12.404933
1: test_func2() 4x64 0.004869
我想按第三列排序,以便输出如下所示:
0: test_func() 4x64 0.004869
0: test_func() 4x128 0.020995
0: test_func() 4x256 0.024929
0: test_func() 4x512 0.056119
0: test_func() 4x1024 0.226016
0: test_func() 4x2048 0.330319
0: test_func() 4x4096 1.329865
0: test_func() 4x8192 3.288312
0: test_func() 16x64 0.036087
0: test_func() 16x128 0.084252
0: test_func() 16x256 0.190282
0: test_func() 16x512 0.312114
0: test_func() 16x1024 0.778160
0: test_func() 16x2048 1.671658
0: test_func() 16x4096 5.664730
0: test_func() 16x8192 12.404933
1: test_func2() 4x64 0.004869
有没有办法对第三列进行排序,以便它首先按递增顺序按第一维排序,然后按递增顺序排序第二维?顺便说一句,我现在使用的排序命令是为了得到我到目前为止得到的结果:
sort -k2,2 -k1,1n -k3,3n
答案 0 :(得分:0)
这应该对你有用
sort -tx -k1,1r file
我使用x
作为字段分隔符
PS:它确实有效,因为0:
和test_func()
出现在每一行