Powershell:Start-Process输出和Transcript

时间:2012-10-03 10:55:39

标签: powershell cmd

代码示例:

$logfile = "log.txt"
$filename = "backup.rar"
Start-Transcript -Path $logfile -Append -Force
"Start..."
Start-Process -FilePath "C:\Program Files\WinRAR\Rar.exe" -ArgumentList ("a " + $filename + " @backup.lst") -NoNewWindow -Wait
"Done"
Stop-Transcript

控制台中的输出:

...
Start...
Error: Do not find backup.lst
Done
...

但是在日志文件中:

...
Start...
Done
...

输出Rar.exe的位置?

PS:抱歉我的英语不好。

2 个答案:

答案 0 :(得分:2)

这是known issue Start-Transcript - 它不会捕获exes的输出。

答案 1 :(得分:0)

我的第一个想法是Start-Transaction没有捕获错误(显然;))

您可能希望查看使用-RedirectStandardOutput和-RedirectStandardError的启动进程参数