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:]]*$'
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?
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:]]*$'
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.
tente com o comando awk.
awk 'NF>0' file
awk 'NF==0' file
Tags shell regular-expression