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

问题描述 投票:-3回答:2

这个问题在这里已有答案:

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

我需要的是在第二行变高时打印当前行。例如,

输入文件;

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中的第一行

bash awk
2个回答
1
投票

sort-u只打印第一行,所以使用tac将最后一行作为第一行:

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

0
投票

或者用awk

awk '{a[$1]=$0}END{for(i in a)print a[i]}' infile
© www.soinside.com 2019 - 2024. All rights reserved.