如果照你所说的效果,wenlq(when) 的做法是对的,sort -karg1[,arg2]指的是从哪里开始排序,这种说法不准确,不过大概也就这意思。举例来说,你上面说的
bcd 9999
abd 1001
abd 1234
abd 3267
abd 5678
abcdef 1084
abcdef 1234
排序时,那么sort -k1,1指对第一字段进行处理。后面的r表示逆序。而-k2,2表示第二字段进行一般的sort排序。如果你将第二字段进行数字排序,那么用下面的命令:
sort -k1,1r -k2,2n
如果你将原文件的1084改为10840,那么
sort -k1,1r -k2,2
的结果为:
bcd 9999
abd 1001
abd 1234
abd 3267
abd 5678
abcdef 10840
abcdef 1234
而sort -k1,1r -k2,2n的结果为:
bcd 9999
abd 1001
abd 1234
abd 3267
abd 5678
abcdef 1234
abcdef 10840