道歉,如果这是非常明显的 - 我是一个bash初学者!如果第1列等于第3列,如果第2列等于第4列,我想从文件中删除行。该文件(file_A)的结构是:
chr1 25000 chr2 16475000 1
chr1 25000 chr2 114325000 1
chr1 25000 chr2 224825000 1
chr1 25000 chr3 196825000 1
为了查看我是否可以获得满足条件的行,我跑了:
awk '$1==$3 && $2==$4' file_A > test_equal
test_equal包含54640行。
但是当我试图在一行中做所有事情时,即
awk '$1!=$3 && $2!=$4' file_A > test_unequal
test_unequal包含12767257行,而file_A最初包含24384120行。 test_unequal中不应该有24384120-54640 = 24329480行?
我确信这对我来说是一个愚蠢的错误,但我不确定我哪里出错了。非常感谢你的帮助!