bash short by two columns

时间:2014-06-04 09:25:04

标签: bash sorting numerical

我是这个数据集:

12363 111111
12363 222222
12363 3456
12364 2895
12364 257363
12364 246291
12364 243701
12364 243699

我想通过第一列,数值,反向和第二列,数值,反向对此进行排序。结果将是:

12364 257363
12364 246291
12364 243701
12364 243699
12364 2895
12363 222222
12363 111111
12363 3456

我试过了,

sort -rn
sort -rnk1,2
sort -rg
sort -rgk1,2

但不知何故,所有这些都为第二列提供了错误的顺序(不是数字,而是值):

12364 2895
12364 257363
12364 246291
12364 243701
12364 243699
12363 3456
12363 222222
12363 111111

你知道如何解决这个问题吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

这个怎么样?

$ sort -rn -k1 -k2 file
12364 257363
12364 246291
12364 243701
12364 243699
12364 2895
12363 222222
12363 111111
12363 3456

请注意,-k1 -k2-k1,2不同。