我有一个制表符分隔的文件,标题行以#
开头。我想修剪所有标题行以及列#2
不以0/0
开头的行。
我的第一个逻辑(删除标题行(是正确的,但是当我添加第二个逻辑(我不确定这是否是正确的方法(时AND
什么都没有返回。
awk -F$'t' '/^[^#]/ && $2 !~ /^0\/0/ {print;}' test.txt
输入文件
#meta1
#meta2
10 0/2:1/2
10 0/0:5/5
10 2/6:0/0
输出文件
10 0/2:1/2
10 2/6:0/0
编辑: 由于 OP 更改了Input_file因此也根据 Ed 先生在评论中的建议添加解决方案。
awk '!(/^#/ || $2~/^0/0/)' Input_file
您能否尝试以下操作。
awk '!/^#meta/ && $2!="0/0"' Input_file
或
awk '!/^#/ && $2!="0/0"' Input_file
或
awk '!(/^#/ || $2=="0/0")' Input_file
设置BEGIN{FS=OFS="t"}
以防您的Input_file是 TAB 分隔的OFS
并且您也需要输出为t
TAB。