como apagar linhas com menos de 2 colunas em um arquivo de dados no linux?

0

Se a entrada estiver assim:

    1
    2 4 5 6 7 19
    20
    22
    24 26 27 
    29 30 31 32 34 40 50 56 58
    234 235 270 500
    1234 1235 1236 1237
    2300

Eu quero excluir as linhas com menos de duas colunas, portanto, a saída deve se parecer com:

    2 4 5 6 7 19
    24 26 27 
    29 30 31 32 34 40 50 56 58
    234 235 270 500
    1234 1235 1236 1237
    
por zara 25.05.2017 / 19:36

1 resposta

5

Como Steeldriver comentou:

awk 'NF>1' input > output

Outra maneira:

grep '[^ ] [^ ]' input > output

(procure por um caractere não espacial seguido por um espaço, seguido por um caractere não espacial).

Para editá-lo "no local":

sed -i '/[^ ] [^ ]/!d' input
    
por 25.05.2017 / 19:45