Write-Output
將指定的物件寫入管線。
語法
Default (預設值)
Write-Output
[-InputObject] <PSObject[]>
[-NoEnumerate]
[<CommonParameters>]
Description
將指定的物件寫入管線。 如果 Write-Output 是管線中的最後一個命令,則會在控制台中顯示物件。
Write-Output 將物件傳送至主要管線,也被稱為 成功流。 若要將錯誤物件傳送至錯誤資料流,請使用 Write-Error。
此 cmdlet 通常用於腳本中,以在控制台上顯示字串和其他物件。
Write-Output 的其中一個內建別名是 echo,類似於使用 echo的其他 Shell。 默認行為是在管線結尾顯示輸出。 在 PowerShell 中,通常不需要在預設顯示輸出的實例中使用 Cmdlet。 例如,Get-Process | Write-Output 相當於 Get-Process。 或者,echo "Home directory: $HOME" 可以撰寫為 "Home directory: $HOME"。
根據預設,Write-Output 列舉集合中的 物件。 不過,Write-Output 也可以使用 noEnumerate 參數,以單一物件的形式將集合傳遞至管線。
範例
範例 1:取得物件並將其寫入主控台
在此範例中,Get-Process Cmdlet 的結果會儲存在 $P 變數中。
Write-Output Cmdlet 會將 $P 中的進程物件顯示於主控台。
$P = Get-Process
Write-Output $P
範例 2:將輸出傳遞至另一個 Cmdlet
此命令會將 「test output」 字串傳送至 Get-Member Cmdlet,此 Cmdlet 會顯示 System.String 類別的成員,示範字元串是沿著管線傳遞的。
Write-Output "test output" | Get-Member
範例 3:隱藏輸出中的列舉
此命令會新增 NoEnumerate 參數,以透過管線將集合或陣列視為單一物件。
Write-Output 1,2,3 | Measure-Object
Count : 3
...
Write-Output 1,2,3 -NoEnumerate | Measure-Object
Count : 1
...
參數
-InputObject
指定要傳遞到管道下游的物件。 輸入包含 物件的變數,或輸入取得物件的命令或表達式。
參數屬性
| 類型: | PSObject[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | True |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-NoEnumerate
根據預設,Write-Output Cmdlet 一律會列舉其輸出。
NoEnumerate 參數會隱藏預設行為,並防止 Write-Output 列舉輸出。 如果命令包裝在括弧中,NoEnumerate 參數就沒有作用,因為括號強制列舉。 例如,(Write-Output 1,2,3 -NoEnumerate) 仍然列舉陣列。
NoEnumerate 參數只有在管線內才有用。 嘗試在控制台中看到 NoEnumerate 的效果會遇到困難,因為 PowerShell 會將 Out-Default 新增至每個命令列結尾,這會導致列舉。 但是,如果您使用管線將 Write-Output -NoEnumerate 傳送至另一個 cmdlet,下游 cmdlet 會接收到集合物件,而不是集合中的各個項目。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
輸入
PSObject
您可以將物件通過管線傳送至此 Cmdlet。
輸出
PSObject
此 Cmdlet 會傳回提交為輸入的物件。
備註
PowerShell 包含下列 Write-Output的別名:
所有平臺:
echo
窗戶:
write