输入:
position fst
1 0.6
2 0.8
3 0.9
4 0.3
5 1
这给了我一个标题:
awk '{if ($2>=0.7) print $1}' input > output
但这不是:
awk '{if ($2<0.7) print $1}' input > output
怎么回事?
答案 0 :(得分:3)
在第二个示例中,$2<0.7
被解释为"fst"<"0.7"
FALSE
您可以添加NR==1 ||
以始终打印第一行:
$ awk 'NR==1 || $2<0.7{print $1}' input
position
1
4
答案 1 :(得分:1)
如果您始终要打印标题,请使用:
awk '{if (NR>1) {if ($2>=0.7) print $1} else print $1}'
awk '{if (NR>1) {if ($2<0.7) print $1} else print $1}'