lembre-se: no shell: se você executar todos os comandos um após o outro, o primeiro comando 'cat ....' ainda estará em execução mesmo depois de você ter executado o último comando. em um shell script: o comando 'cat ...' será morto logo após a execução do último comando e, portanto, não poderá mais ler e escrever. Para o primeiro passo: tente colocar um "sleep 1" entre as linhas de comando e um sleep mais longo "sleep 10" após o último comando.