Linux 打印文件中不以哈希开头的所有行,并按特定列进行筛选

Linux 打印文件中不以哈希开头的所有行,并按特定列进行筛选,linux,shell,awk,Linux,Shell,Awk,我有一个标签分隔的文件,标题行以#开头。我想修剪所有标题行以及列#2不以0/0开头的行 第一个逻辑(删除标题行)是正确的,但当我用添加第二个逻辑(我不确定这是否正确)时,没有返回任何内容 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 输出文件 #me

我有一个标签分隔的文件,标题行以
#
开头。我想修剪所有标题行以及列
#2
不以
0/0
开头的行

第一个逻辑(删除标题行)是正确的,但当我用
添加第二个逻辑(我不确定这是否正确)时,
没有返回任何内容

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
输出文件

#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更改了输入文件,所以也根据Ed sir在评论中的建议添加了解决方案

awk '!(/^#/ || $2~/^0\/0/)'  Input_file

你能试试下面的吗

awk '!/^#meta/ && $2!="0/0"'  Input_file

设置
BEGIN{FS=OFS=“\t”}
,以防您的输入文件被制表符分隔,并且您也需要
OFS
输出为
\t
制表符