Casca de peixe
Para redirecionar a saída padrão e o erro padrão para o arquivo all_output.txt, você pode escrever:
echo Hello > all_output.txt ^&1
Eu sei a resposta para algumas conchas, por exemplo com cmd.exe você pode:
some.exe > out.txt 2>&1
Como você consegue o mesmo para outros shells (bash, ksh, tcsh, powershell, etc)?
Casca de peixe
Para redirecionar a saída padrão e o erro padrão para o arquivo all_output.txt, você pode escrever:
echo Hello > all_output.txt ^&1
Para csh e tcsh
some.exec >& out.txt
Em Powershell , é exatamente o mesmo:
2>&1 Sends errors to the get-process none, powershell 2>&1
success output stream.
(de about_Redirection ).
Em bash e ksh pelo menos eu também sei que funciona dessa maneira .
Parece ser uma convenção comum.
Uma maneira rápida de descobrir isso é abrir a página man do shell e fazer uma pesquisa por &1 (com / e, em seguida, digitando &1 ). Isso raramente ocorre em outros contextos.
No bash você faz exatamente o mesmo.
./some_exec > out 2>&1
Tags command-line bash shell