次の方法で共有


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

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

パラメーター

-InputObject

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

Type:PSObject[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NoEnumerate

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

入力

PSObject

オブジェクトをパイプ処理して Write-Output にすることができます

出力

PSObject

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