Tal como em outras situações em Bash shell existem vários comandos para retirar as linhas em branco de um ficheiro, neste exemplo vou enumerar alguns.

grep -v "^$" [FICHEIRO] > [NOVO FICHEIRO]

o simbolo ^ quer dizer inicio da linha, o $ quer dizer fim de linha... Ora em conjunto desta maneira quer dizer uma linha em branco pois indica o inicio e fim juntos...

sed ‘/^$/d’ [FICHEIRO] > [NOVO FICHEIRO]
sed -n ‘/^$/!p’ [FICHEIRO] > [NOVO FICHEIRO]

Os simbolos são os mesmos o ^ e o $ para inicio e fim de linha.

awk NF [FICHEIRO] > [NOVO FICHEIRO]

A parte NF quer dizer linhas em branco....

Com qualquer um dos comandos retiramos as linhas em branco de um ficheiro.