Write-Output
指定したオブジェクトをパイプラインに書き込みます。
構文
Default (既定)
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-Output は、NoEnumerate パラメーターを持つ単一のオブジェクトとしてパイプラインにコレクションを渡すこともできます。
例
例 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: 出力の列挙を抑制する
このコマンドは、NoEnumerate パラメーターを追加して、パイプラインを介してコレクションまたは配列を 1 つのオブジェクトとして扱います。
Write-Output 1,2,3 | Measure-Object
Count : 3
...
Write-Output 1,2,3 -NoEnumerate | Measure-Object
Count : 1
...
パラメーター
-InputObject
パイプラインに送信するオブジェクトを指定します。 オブジェクトを含む変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。
パラメーターのプロパティ
| 型: | PSObject[] |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-NoEnumerate
既定では、Write-Output コマンドレットは常にその出力を列挙します。
NoEnumerate パラメーターは、既定の動作を抑制し、Write-Output が出力を列挙できないようにします。 コマンドがかっこで囲まれている場合、NoEnumerate パラメーターは効果がありません。かっこは列挙型を強制するためです。 たとえば、(Write-Output 1,2,3 -NoEnumerate) は配列を列挙します。
NoEnumerate パラメーターは、パイプライン内でのみ役立ちます。 コンソールで noEnumerate Write-Output -NoEnumerate を別のコマンドレットに渡すと、ダウンストリーム コマンドレットはコレクションの列挙項目ではなくコレクション オブジェクトを受け取ります。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
PSObject
このコマンドレットにオブジェクトをパイプできます。
出力
PSObject
このコマンドレットは、入力として送信されたオブジェクトを返します。
メモ
PowerShell には、Write-Outputの次のエイリアスが含まれています。
すべてのプラットフォーム:
echo
ウィンドウズ:
write