Abra o arquivo no Vim (ou apenas vi ) e digite:
:g/^zone/.,/^}/j
Voila, você terminou.
Isso executa g lobally, em todas as linhas que começam com zone , o comando:
.,/^}/j
O que significa que, da linha atual ( . ) até a próxima linha que começa com uma chave de fechamento, j oin todas essas linhas juntas.
Se você precisar fazer o script, use o formato de script de vi , ex :
printf '%s\n' 'g/^zone/.,/^}/j' x | ex file.txt