verificar se a linha contém caracteres

1

Eu tenho um arquivo que parece

This row contains characters

this row to

*-=?§/

this             is the lat row of the file

Como posso imprimir somente linhas que contenham alguns caracteres - também conhecidos como linhas vazias?

Eu tentei

cat file | grep '[a-zA-Z0-9,\.,?{}()]'

mas não funcionou. Como posso conseguir isso?

    
por trolkura 25.11.2015 / 18:34

3 respostas

3

Você pode fazer:

grep -v '^$' file.txt

isto imprimirá as linhas que não estão vazias.

Se você tiver apenas espaço ou tabulação na linha e quiser ignorar essas linhas também:

grep -v '^[[:blank:]]*$'
    
por 25.11.2015 / 18:37
0

Use

$ grep '[[:graph:]]' file

para obter todas as linhas com um tipo de caractere visível em file .

Alternativamente,

$ grep -v '^[^[:graph:]]*$' file

para filtrar todas as linhas que possuem apenas caracteres não visíveis.

    
por 09.02.2017 / 23:38
0

tente com o comando awk.

awk 'NF>0' file

awk 'NF==0' file
    
por 10.02.2017 / 00:32