about_Output_Streams
簡単な説明
PowerShell での出力ストリームの可用性と目的について説明します。
長い説明
PowerShell には、複数の出力ストリームが用意されています。 ストリームは、さまざまな種類のメッセージのチャネルを提供します。 これらのストリームには、関連付けられているコマンドレットまたはリダイレクトを使用して書き込むことができます。 詳細については、「 about_Redirection」を参照してください。
PowerShell では、次の出力ストリームがサポートされています。
ストリーム# | Description | 導入バージョン | Write コマンドレット |
---|---|---|---|
1 | Success ストリーム | PowerShell 2.0 | Write-Output |
2 | Error ストリーム | PowerShell 2.0 | Write-Error |
3 | Warning ストリーム | PowerShell 2.0 | Write-Warning |
4 | Verbose ストリーム | PowerShell 2.0 | Write-Verbose |
5 | Debug ストリーム | PowerShell 2.0 | Write-Debug |
6 | Information ストリーム | PowerShell 5.0 | Write-Information |
N/A | Progress ストリーム | PowerShell 2.0 | Write-Progress |
注意
ストリームは Progress リダイレクトをサポートしていません。
Success ストリーム
ストリームは Success 、正常な正常な結果の既定のストリームです。
コマンドレットを Write-Output
使用して、このストリームにオブジェクトを明示的に書き込みます。 このストリームは、PowerShell パイプラインを介してオブジェクトを渡すときに使用されます。 ストリームは Success 、ネイティブ アプリケーションの stdout ストリームに接続されます。
Error ストリーム
ストリームは Error 、エラー結果の既定のストリームです。 コマンドレットを Write-Error
使用して、このストリームに明示的に書き込みます。 ストリームは Error 、ネイティブ アプリケーションの stderr ストリームに接続されます。 ほとんどの条件下では、これらのエラーによって実行パイプラインが終了する可能性があります。 Errorこのストリームに書き込まれた s も自動変数に $Error
追加されます。 詳細については、「about_Automatic_Variables」を参照してください。
Warning ストリーム
ストリームは Warning 、ストリームに書き込まれたエラーよりも深刻ではないエラー条件を Error 対象としています。 通常の状態では、これらの警告は実行を終了しません。 Warningは自動変数に $Error
書き込まれません。 コマンドレットを Write-Warning
使用して、このストリームに明示的に書き込みます。
Verbose ストリーム
ストリームは Verbose 、対話形式またはスクリプトから実行されるコマンドのトラブルシューティングに役立つメッセージを対象としています。 コマンドレットを Write-Verbose
使用して、このストリームにメッセージを明示的に書き込みます。 多くのコマンドレットは、コマンドレットの内部動作を理解するのに役立つ詳細な出力を提供します。 詳細メッセージは、共通パラメーターを使用する -Verbose
場合にのみ出力されます。 詳細については、「about_CommonParameters」を参照してください。
Debug ストリーム
ストリームは Debug 、スクリプト作成者がコードが失敗する理由を理解するのに役立つメッセージに使用されます。 コマンドレットを Write-Debug
使用して、このストリームに明示的に書き込みます。 デバッグ メッセージは、共通パラメーターを使用 -Debug
する場合にのみ出力されます。 詳細については、「about_CommonParameters」を参照してください。
Debug メッセージは、エンド ユーザー以外のスクリプトおよびコマンドレット開発者を対象としています。 これらのデバッグ メッセージには、詳細なトラブルシューティングに必要な内部詳細を含めることができます。
Information ストリーム
ストリームは Information 、ユーザーがスクリプトの動作を理解するのに役立つメッセージを提供することを目的としています。 また、PowerShell を介して情報を渡すために使用される追加のストリームとして開発者が使用することもできます。 開発者はストリーム データにタグを付け、そのストリームに対して特定の処理を行うことができます。 コマンドレットを Write-Information
使用して、このストリームに明示的に書き込みます。
Write-Host
もストリームに Information 書き込みます。 コマンドレットの違いは、 Write-Host
ストリームをリダイレクトしない限り、ホスト コンソールにも書き込みを行 Information う点です。 Write-Information
はストリームへの書き込みのみを行 Information います。
Progress ストリーム
ストリームは Progress 、実行時間の長いコマンドとスクリプトの進行状況を伝えるメッセージに使用されます。 コマンドレットを Write-Progress
使用して、このストリームにメッセージを明示的に書き込みます。 ストリームは Progress リダイレクトをサポートしていません。