我有一个包含两列的文件,其中第一个字段有多个相同的条目,每个条目都有一个相应的值。
hi 3
hello 4
who 3
hello 6
hi 7
who 9
现在,我想对输入文件中保存最高对应值的行进行排序,从而产生唯一条目(第一个字段)。它应该是这样的。
hi 7
hello 6
who 9
如何使用sort和awk完成任务?请帮忙。
答案 0 :(得分:1)
我希望这就是你要找的东西
awk '$2>array[$1]{array[$1]=$2} END{for (i in array) print i, array[i]}'
<强>测试强>
$ cat input
hi 3
hello 4
who 3
hello 6
hi 7
who 9
$ awk '$2>array[$1]{array[$1]=$2} END{for (i in array) print i, array[i]}' input
hello 6
hi 7
who 9