nawk -v count=0 '!NF {count++; next}; 1; END {print count}'
Para todas as linhas sem campos ( !NF ) (linhas vazias, neste caso), incremente o count e siga em frente. Caso contrário, imprima a linha (a ação padrão para qualquer valor verdadeiro, incluindo 1 ). No final da entrada, imprima o count . Inicializamos count com 0 para que, se cada linha não estiver vazia, count ainda tenha um valor.
Poderíamos usar /^$/ em vez de !NF - o último pode falhar em linhas contendo apenas espaços em branco.