如何在特定列中grep值小于0.2的行?

时间:2014-03-21 11:00:55

标签: linux grep cut

  ID RT      EZ    Z0      Z1      Z2    RHO     PHE 

 1889  UN    NA  1.0000  0.0000  0.0000  0.8765  -1  
 1890  UN    NA  1.0000  0.0000  0.0000  0.4567  -1  
 1891  UN    NA  1.0000  0.0000  0.0000  0.0012  -1  
 1892  UN    NA  1.0000  0.0000  0.0000  0.1011  -1  

我想grep所有列有' RHO'值小于0.2,其他列包含在选定的行中。

1 个答案:

答案 0 :(得分:12)

直接使用awkawk '$field < value'

$ awk '$7<0.2' file
 1891  UN    NA  1.0000  0.0000  0.0000  0.0012  -1  
 1892  UN    NA  1.0000  0.0000  0.0000  0.1011  -1  

由于RHO是列7,它会检查该字段。

如果您只想打印特定列,请说awk '$field < value {print $another_field}'。对于ID

$ awk '$7<0.2 {print $1}' file
1891
1892