You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用bash脚本在文本文件中查找指定列最大值并提取对应关联字段

temperature.txt数据处理方案

单遍扫描实现(适合仅存在一个最大值的场景)

直接执行以下awk命令即可得到结果:

awk -F ',' 'BEGIN{max=-100000} {if($5 > max) {max = $5; res = $1","$2","$3","$4}} END{print res}' temperature.txt

命令说明:

  • -F ',' 指定字段分隔符为逗号
  • BEGIN{max=-100000} 初始化最大值变量,可根据你的实际数据范围调整初始值
  • 逐行扫描时对比第5列数值,大于当前最大值就同步更新最大值和对应的结果内容
  • 遍历完所有行后输出最终结果

针对你提供的示例文件,运行后输出结果为:
44.6498634,19.1404118,2007.05.18,04:32

多最大值场景实现(适合多个行第5列同为最大值的情况)

如果存在多行第5列数值都是最大值,需要全部输出对应信息,执行以下命令:

awk -F ',' 'NR==FNR {if($5>max) max=$5; next} $5==max {print $1","$2","$3","$4}' temperature.txt temperature.txt

命令说明:

  • 第一遍扫描整个文件,先确定第5列的最大值
  • 第二遍扫描文件,输出所有第5列等于最大值的行的前4个字段

内容的提问来源于stack exchange,提问作者helpmeplease

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 09:57:02