Você pode usar tee
. Por exemplo:
ls -l / | tee tmp.txt
Será impresso no stdout e tmp.txt
conterá uma cópia da saída. Se você quiser incluir o stderr no tmp.txt:
ls -l / 2>&1 | tee tmp.txt
Eu tenho um aplicativo de console que precisa ser executado como parte da implantação de uma nova versão do aplicativo no meu servidor.
Este aplicativo de console foi projetado para gerar saída para o console e não pode ser alterado.
Gostaria de executá-lo normalmente, mas ter stdout e stderr conectados a um arquivo ao mesmo tempo em que são enviados para o console.
Como posso fazer isso no Linux?
Existem várias maneiras de fazer isso.
nohup 2>&1 application &
. tail -f nohop.out
fará o mesmo sem impedir SIGHUP. C2h e goldilock já mencionam isso. tee
. Isso é explicado em mais detalhes neste post . Eu percebo que a tela é uma maneira de contornar, mas seus outros recursos são muito bons para implementações.
Tags stderr io-redirection