我的制表符分隔文件包含很多行,我想过滤掉那些有0, - 或“NC”的行。我正在使用这个awk代码:
awk '{for (i=5; i<=14; ++i) if($i !=0 && $i !="--" && $i !="NC") {print;next}}'
从第5列到第14列过滤掉。
我不确定这是否适合我的目的。有些专家可以检查一下我的代码吗?感谢
答案 0 :(得分:1)
如果您要在第5到14栏中跳过包含0
,--
或NC
的行,您可能需要执行以下操作。每次在字段5到14中遇到0
,--
或NC
以外的任何内容时,您现有的代码都会打印一行
awk '{for (i=5; i<=14; ++i) if($i == 0 || $i == "--" || $i == "NC"){next}};{print}'