小编Die*_*go 的帖子

使用awk,如何找到一列中的最大值并打印它;然后在另一列中打印匹配值

假设我有这些数据:

1  text1  1   1   5
2  text2  2   2   10 
3  text3  3   3   15
4  text4  4   4   50
5  text5  5   5   25
Run Code Online (Sandbox Code Playgroud)

我使用以下代码获取第 5 列的最大值:

awk 'BEGIN {a=0} {if ($5>0+a) a=$5} END{print a}' data.txt
Run Code Online (Sandbox Code Playgroud)

我的问题是如何在该代码中添加更多参数,以便在我选择的任何列(但只有一列)中找到关联的值?例如,我想找到第 5 列的最大值以及第 2 列的关联值

我想要的输出是:

50 text4
Run Code Online (Sandbox Code Playgroud)

我不知道如何添加更多参数以获得匹配值。

awk if-statement max

4
推荐指数
1
解决办法
159
查看次数

标签 统计

awk ×1

if-statement ×1

max ×1