Linux 如何选择列2和列3不相等且不等于0或1的行?(带awk)

Linux 如何选择列2和列3不相等且不等于0或1的行?(带awk),linux,awk,Linux,Awk,我有这样一个文件: AX-75448119 0 1 AX-75448118 0.45 0.487179 AX-75474642 0 0 AX-75474643 0.25 0.820513 AX-75448113 1 0 AX-75474641 1 1 我想选择第2列和第3列不相等的行,以及它们都不相等的0或1行!i、 e如果第2列和第3列相似,但等于0.5或除0和1之外的任何其他数字,我希望有该行 因此,输出将是: AX-75448119 0 1 AX-75448118 0.45 0.4871

我有这样一个文件:

AX-75448119 0 1
AX-75448118 0.45 0.487179
AX-75474642 0 0
AX-75474643 0.25 0.820513
AX-75448113 1 0
AX-75474641 1 1
我想选择第2列和第3列不相等的行,以及它们都不相等的0或1行!i、 e如果第2列和第3列相似,但等于0.5或除0和1之外的任何其他数字,我希望有该行 因此,输出将是:

AX-75448119 0 1
AX-75448118 0.45 0.487179
AX-75474643 0.25 0.820513
AX-75448113 1 0
我知道如何编写命令来选择列2和3彼此相等且等于0或1的行,即:

awk '$2=$3==1 || $2=$3==0' test.txt | wc -l
但我想要的恰恰相反,选择不是上述命令输出的每一行!
谢谢,我希望我能够解释我想要什么

如果我正确了解您的要求,这可能对您有用

awk ' $2 != $3 { print; next } $2 == $3 && $2 != 0 && $2 != 1 { print }' INPUTFILE

请在

上查看它的实际应用。如果我正确地了解您的需求,它可能会对您有用

awk ' $2 != $3 { print; next } $2 == $3 && $2 != 0 && $2 != 1 { print }' INPUTFILE

请在

上查看它的实际操作这可能对您有用:

awk '($2==0 || $2==1) && ($3==0 || $3==1) && $2==$3{next}1' file

这可能适合您:

awk '($2==0 || $2==1) && ($3==0 || $3==1) && $2==$3{next}1' file
可以简化为awk'$2!=$3 || $2 == $3 && $2 != 0 && $2 != 1'文件名可简化为awk'$2!=$3 || $2 == $3 && $2 != 0 && $2 != 1'文件名