在PowerShell中如何将错误,警告,写主机输出捕获到单个文件中?
当我执行外部命令/ write-warning / write-error / write-host时,我需要在文件中捕获所有信息。
当我将写入错误重定向到日志文件时,它将不会显示与在控制台上显示的内容相同的内容。它还有一些我不需要的信息。
是否可以使用ERROR前缀错误:,使用WARN警告:在日志文件中?
答案 0 :(得分:3)
看看Oisin的PowerShell 2.0: A Configurable and Flexible Script Logger Module。应该可以在消息前添加自定义字符串('ERROR','WARN',...)
答案 1 :(得分:3)
执行此操作的简单方法是使用cmd.exe,例如:
cmd /c powershell.exe -file <path_to_script> > script.log
答案 2 :(得分:2)
也许Start-Transcript和Stop-Transcript会做你想要的。 (PowerShell 2.0)