【发布时间】:2019-11-25 23:11:47
【问题描述】:
我有一个制表符分隔的文件,看起来像这样,有 5 列。
temp1 56 09 34,54,65,6 file1
temp2 45 23 4,55,11,7,8,4,7 file2
temp3 123 56 0.01,0,50,4,4,4,6,7,1,3,44,67,8 file3
temp4 11 56 0.006,0.006,0.006 file4
temp5 10 123 0.00001,0.005,0.004 file5
我希望能够拆分第 4 列,并查看列表中的每个值,如果第 4 列中该列表的最大值大于 0.5,则打印出整行。
所以输出将是:
temp1 56 09 34,54,65,6 file1
temp2 45 23 4,55,11,7,8,4,7 file2
temp3 123 56 0.01,0,50,4,4,4,6,7,1,3,44,67,8 file3
这是我到目前为止所尝试的:
cat inputFile.txt|awk 'BEGIN {FS="\t"}; NR>1 {print $4}'|awk '{split($1,a,","); if (max(a)>0.5) print $0}'
但我已经变得困惑了。
【问题讨论】:
标签: awk