Estou executando um script (em um projeto Laravel) que leva algumas horas para ser concluído. nohup
para evitar que ele saia se minha sessão ssh estiver desconectada.
nohup php artisan do:thing 2>&1 | tee ~/tmp
Começa bem, mas depois de algum tempo, recebo um erro de pipe quebrado e ele para de produzir coisas e tee
também - o documento para nesse ponto.
Acho que é porque o tee
processo foi interrompido pela queda da sessão ssh? Posso evitar isso?
Eu poderia rejeitar o processo tee e evitar que o ssh o termine?
Isso
nohup
se aplica ao primeiro comando. Quando você fecha seu shell, eletee
não pode mais gravar em sua saída normal ( stdout ) e sair. Isso faz com que o primeiro comando seja encerrado porque agora ele também não pode mais gravar na saída do pipe.Experimente isso
Ou se você tiver
screen
,