提取AWK范围内的列

时间:2015-06-15 18:20:09

标签: unix awk

我一直在尝试提取一列中的数字落在特定范围内的行。

假设我有一个看起来如此的文件:

chrom    prediction
chrom1    0.75
chrom2    0.5
chrom4    0.76

如果我想打印预测值在0.75-0.8范围内的行,我的输出看起来如下:

chrom    prediction
chrom1    0.75
chrom2    0.76

我试过这个,但失败了。我哪里出错了?

awk '$2 >= "0.7" && < "0.75" ' Coverage7_haploscores_removed.txt > range_07_075.txt

1 个答案:

答案 0 :(得分:4)

您想测试0.75-0.8但是编写代码来测试0.7-0.75,而您忘记在条件的第二部分指定要测试的内容。这样做:

awk '$2 >= 0.75 && $2 <= 0.8'

另请注意,您需要进行数字比较而不是字符串比较,因此请丢失引号。