如何使用基于第二个字段Linux的awk和sort命令过滤文件?

时间:2016-02-11 06:28:40

标签: linux shell

我有一个类似下面的文件,我根据用户名字段对其进行了排序。

1234    200   suresh
5678    150   murali
8543    200   sanjith
5678    100   suresh
1456    400  murali

我正在尝试删除相同用户名得分最低的行。所以我想使用Shell Script获得输出。

1234    200   suresh
5678    400   murali
8543    200   sanjith

1 个答案:

答案 0 :(得分:1)

您可以使用awk&#39关联数组:

awk '$2>m[$3]{m[$3]=$2; r[$3]=$0} END{for (i in r) print r[i]}' file
1456    400  murali
1234    200   suresh
8543    200   sanjith