awk 'NF != 3'
Esta é uma maneira simples de imprimir todas as linhas que não possuem exatamente três colunas. Se você também quiser que o comando retorne um status de falha se qualquer linha for encontrada:
awk 'NF != 3 {print; ++bad} END {exit(!!bad)}'
Remova print;
para não imprimir nada e apenas relate a presença de tais linhas através do status de saída.
Você também pode fazer isso com o grep:
grep -Ev '^[^ ]+ +[^ ]+ +[^ ]+$'
Se você quiser ser mais rigoroso e imprimir todas as linhas que não contenham exatamente três colunas, cada uma contendo um inteiro:
grep -Ev '^([0-9]+) +([0-9]+) +([0-9]+)$'
Use [␉ ]+
em vez de +
, em que ␉
é um caractere de tabulação se você quiser permitir uma ou mais guias como separadores de coluna. Use (␉| +)
para permitir exatamente uma guia ou uma sequência de espaços.