Write-Output
指定したオブジェクトをパイプラインに書き込みます。 パイプラインの最後のコマンドの場合 Write-Output 、オブジェクトはコンソールに表示されます。
構文
Write-Output
[-InputObject] <PSObject[]>
[-NoEnumerate]
[<CommonParameters>]
説明
指定したオブジェクトをパイプラインに書き込みます。 パイプラインの最後のコマンドの場合 Write-Output 、オブジェクトはコンソールに表示されます。
Write-Output は、"出力ストリーム" または "成功パイプライン" とも呼ばれるプライマリ パイプラインにオブジェクトを送信します。エラー オブジェクトをエラー パイプラインに送信するには、次を使用 Write-Errorします。
このコマンドレットは通常、コンソールに文字列およびその他のオブジェクトを表示するためにスクリプトで使用されます。 組み込みのエイリアスWrite-Outputの 1 つは、使用するecho他のシェルと同様ですecho。 既定の動作では、パイプラインの末尾に出力が表示されます。 PowerShell では、通常、既定で出力が表示されるインスタンスでコマンドレットを使用する必要はありません。 たとえば、Get-Process | Write-Output は、Get-Process と同じです。 または、 echo "Home directory: $HOME" 記述 "Home directory: $HOME"できます。
既定では、 Write-Output コレクション オブジェクトを列挙します。 ただし、 Write-OutputNoEnumerate パラメーターを持つ 1 つのオブジェクトとして、コレクションをパイプラインに渡すためにも使用できます。
例
例 1: オブジェクトを取得してコンソールに書き込む
この例では、コマンドレットの Get-Process 結果が変数に $P 格納されます。 このコマンドレットは Write-Output 、コンソールにプロセス オブジェクト $P を表示します。
$P = Get-Process
Write-Output $P
例 2: 別のコマンドレットに出力を渡す
このコマンドは、"test output" 文字列を Get-Member コマンドレットにパイプし、 System.String クラスのメンバーを表示し、パイプラインに沿って文字列が渡されたことを示します。
Write-Output "test output" | Get-Member
例 3: 出力の列挙を抑制する
このコマンドは、パイプラインを通じてコレクションまたは配列を 1 つのオブジェクトとして扱うために NoEnumerate パラメーターを追加します。
Write-Output 1,2,3 | Measure-Object
Count : 3
...
Write-Output 1,2,3 -NoEnumerate | Measure-Object
Count : 1
...
パラメーター
パイプラインに送信するオブジェクトを指定します。 オブジェクトが格納されている変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。
| Type: | PSObject[] |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
既定では、コマンドレットは Write-Output 常にその出力を列挙します。 NoEnumerate パラメーターは、既定の動作を抑制し、出力を列挙することを防ぎますWrite-Output。 NoEnumerate パラメーターは、コマンドがかっこでラップされている場合は影響しません。これは、かっこによって列挙が強制されるためです。 たとえば、 (Write-Output 1,2,3) 配列を列挙します。
NoEnumerate パラメーターは、パイプライン内でのみ役立ちます。 PowerShell はすべてのコマンド ラインの末尾に追加Out-Defaultされるため、コンソールで NoEnumerate の影響を確認しようとすると問題が発生し、列挙が発生します。 ただし、別のコマンドレットにパイプ Write-Output -NoEnumerate すると、ダウンストリーム コマンドレットはコレクションの列挙項目ではなく、コレクション オブジェクトを受け取ります。
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
入力
オブジェクト Write-Outputをパイプできます。
出力
Write-Output は、入力として送信されたオブジェクトを返します。