3

コードの例:

$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:英語が下手でごめんなさい。

4

2 に答える 2

2

これはの既知の問題です-exeからの出力をキャプチャしStart-Transcriptません。

于 2012-10-03T13:42:59.177 に答える
0

私の最初の考えは、Start-Transactionはエラーをキャプチャしていないということです(明らかに;))

-RedirectStandardOutputおよび-RedirectStandardErrorのstart-process引数の使用を確認することをお勧めします

于 2013-02-16T15:55:47.017 に答える