如何为排序的输出提供排名?

时间:2018-02-13 16:42:43

标签: linux shell unix

例如,如果输入为:

Dog 100
Cat 200
Monkey 50
Elephant 20

我希望输出为:

1 Cat 200
2 Dog 100
3 Monkey 50
4 Elephant 20

我想使用sort函数来实现这一目标。谢谢!

1 个答案:

答案 0 :(得分:2)

为了对每一行的第二个元素(-k2)进行排序,然后添加行nbr(| nl)。 -r选项可以反转顺序。

sort -k2 -rn file.txt | nl

给出:

1   Cat 200
2   Dog 100
3   Monkey 50
4   Elephant 20