如何使用awk按值过滤多值列,筛选第二列前两值大于200的行
AWK多值列过滤实现
需求说明
数据分为两列,分隔符为;;第二列包含三个由空格分隔的浮点数值,需要筛选出第二列的第一个和第二个数值均大于200的所有行。
数据示例
randUni15799:1;0.00 0.00 0.00 randUni1785:1;0.00 0.00 0.00 randUni18335:1;0.00 0.00 0.00 randUni18368:1;223.67 219.17 0.00 randUni18438:1;43.71 38.71 1.52
预期结果
randUni18368:1;223.67 219.17 0.00
解决方案
在他人协助下,已成功实现需求的AWK命令如下:
awk -F ";" '{split($2, a, " "); if (a[1] > 200 && a[2] > 200) print}'
内容的提问来源于stack exchange,提问作者Min Hee Jo
相关产品推荐
相关产品推荐

