如果下一行的值较高,如何打印最后一个重复行?

时间:2017-12-16 16:21:12

标签: bash awk

这是我第一次在这里问这个问题。帮助别人可以帮助我。

如果第二行变高,我需要打印当前行。例如,

输入文件;

1  2  3 f
1  3  1 p
2  5  3 h
2  6  5 r
2  5  6 u
3  5  9 y

我希望如下:

1 3 1 p
2 5 6 u
3 5 9 y

如果第一行与第一列的第二行具有相同的值,我想选择$ 1中的第一行

2 个答案:

答案 0 :(得分:1)

带有sort

-u仅打印第一行,因此请使用tac将最后一行设为第一行:

<input.file tac | sort -k1,1 -u

答案 1 :(得分:0)

或使用awk

awk '{a[$1]=$0}END{for(i in a)print a[i]}' infile