Se você deseja um redirecionamento direto de toda a saída para um arquivo, tente usar *>>
:
# You'll receive standard output for the first command, and an error from the second command.
mkdir c:\temp -force *>> c:\my.log ;
mkdir c:\temp *>> c:\my.log ;
Como esse é um redirecionamento direto para o arquivo, ele não será exibido no console (geralmente útil). Se você deseja a saída do console, combine toda a saída com *&>1
e, em seguida, canalize com Tee-Object
:
mkdir c:\temp -force *>&1 | Tee-Object -Append -FilePath c:\my.log ;
mkdir c:\temp *>&1 | Tee-Object -Append -FilePath c:\my.log ;
# Shorter aliased version
mkdir c:\temp *>&1 | tee -Append c:\my.log ;
Acredito que essas técnicas sejam suportadas no PowerShell 3.0 ou posterior; Estou testando no PowerShell 5.0.