为什么以下awk命令不忽略以ChrC
和ChrM
开头的列:
awk '{if($1 != "ChrC" || $1 != 'ChrM') print $0}' TAIR10_GFF3_genes-fix1.rm_rubbish_rm_protein_rm_id_rm_index.gff | cut -f1 | sort | uniq
Chr1
Chr2
Chr3
Chr4
Chr5
ChrC
ChrM
##gff-version 3
先谢谢您
答案 0 :(得分:1)
由于未提供示例,因此无法对其进行测试,请您尝试在awk
内更改条件。恕我直言,为什么打印它是因为它的OR条件,所以如果零件中的1个失败,那么它也会打印行(基于
1 || 0
-> 1
的OR条件的逻辑,在AND
条件的情况下不会发生。
if($1 != "ChrC" && $1 != "ChrM")
答案 1 :(得分:1)
尝试(使用"
)
awk '{if($1 != "ChrC" || $1 != "ChrM") print $0}' TAIR10_GFF3_genes-fix1.rm_rubbish_rm_protein_rm_id_rm_index.gff | cut -f1 | sort | uniq
可能print $1
会为您节省cut
。