3

コマンドプロンプトから呼び出すPowerShellスクリプトのセットがあります。現在、スクリプトは成功または失敗のコードを返します。

スクリプト内のPowerShellコマンドの一部がエラーをスローすることがあります。すべての出力(ログ/メッセージ/エラー)をキャプチャしたい。次のようなコマンドを使用できることがわかりました

。\test.ps12>&1 | foreach-object {$ _。ToString()} | アウトファイルe:\ log.txt

このアプローチではエラーメッセージがログに記録されますが、次の問題があります

  1. PowerShellコンソールから同じスクリプトを実行したときに表示される行番号ではなく、エラーメッセージをログに記録するだけです。

  2. これで、PowerShellからの出力メッセージはありません。コンソールからの出力を非表示にしたくなく、PowerShellログを追加のものとして使用したいと思います。

  3. スクリプト呼び出しコマンドを変更する必要があります。PowerShellウィンドウからの出力を実行およびキャプチャできるスタンドアロンツールはありますか?

4

2 に答える 2

2

Start-TranscriptコマンドとStop-Transcriptコマンドが見つかりました。これを使用して、すべての出力コンテンツ(エラー/メッセージ/情報など)をファイルにキャプチャできます。

于 2012-05-08T14:01:24.073 に答える
2

私はそれを行うための素晴らしい方法としてStart-Transcriptに言及するつもりでした。

Get-Historyを使用して、入力したコマンドを確認することもできます。

于 2012-07-19T10:01:08.557 に答える