次の方法で共有


Write-Output

指定したオブジェクトをパイプラインの次のコマンドに送信します。 コマンドがパイプラインの最後のコマンドである場合、オブジェクトはコンソールに表示されます。

構文

Write-Output
     [-InputObject] <PSObject[]>
     [-NoEnumerate]
     [<CommonParameters>]

説明

Write-Output コマンドレットは、指定したオブジェクトをパイプラインの次のコマンドに送信します。 コマンドがパイプラインの最後のコマンドである場合、オブジェクトはコンソールに表示されます。

Write-Output は 、オブジェクトをプライマリ パイプライン ("出力ストリーム" または "成功パイプライン" とも呼ばれます) に送信します。エラー パイプラインにエラー オブジェクトを送信するには、 Write-Error を使用します。

このコマンドレットは、通常、文字列やその他のオブジェクトをコンソールに表示するためにスクリプトで使用されます。 ただし、既定の動作ではパイプラインの最後にオブジェクトが表示されるため、通常はコマンドレットを使用する必要はありません。 たとえば、 Get-Process | Write-OutputGet-Process に相当します。

例 1: オブジェクトを取得してコンソールに書き込む

PS C:\> $P = Get-Process
PS C:\> Write-Output $P
PS C:\> $P

最初のコマンドは、コンピューターで実行されているプロセスを取得し、それらを $P 変数に格納します。

2 番目と 3 番目のコマンドは、コンソール上の $P にプロセスオブジェクトを表示します。

例 2: 別のコマンドレットに出力を渡す

PS C:\> Write-Output "test output" | Get-Member

このコマンドは、"test output" 文字列を Get-Member コマンドレットにパイプ処理し、 System.String クラスのメンバーを表示し、文字列がパイプラインに沿って渡されたことを示します。

例 3: 出力の列挙を抑制する

PS C:\> Write-Output @(1,2,3) | measure

Count    : 3
...

PS C:\> Write-Output @(1,2,3) -NoEnumerate | measure

Count    : 1

このコマンドは、NoEnumerate パラメーターを追加して、パイプラインを介してコレクションまたは配列を 1 つのオブジェクトとして扱います。

パラメーター

-InputObject

パイプラインに送信するオブジェクトを指定します。 オブジェクトを含む変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。

型:PSObject[]
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-NoEnumerate

既定では、 Write-Output コマンドレットは常にその出力を列挙します。 NoEnumerate パラメーターは、既定の動作を抑制し、Write-Output が出力を列挙するのを防ぎます。 NoEnumerate パラメーターは、かっこでコマンドを囲んで作成されたコレクションには影響しません。これは、かっこによって列挙が強制されるためです。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

PSObject

オブジェクトを Write-Output にパイプ処理できます。

出力

PSObject

Write-Output は、入力として送信されたオブジェクトを返します。