Write-Output
將指定的物件傳送至管線中的下一個命令。 如果命令是管線中的最後一個命令,對象會顯示在控制台中。
語法
Write-Output
[-InputObject] <PSObject[]>
[-NoEnumerate]
[<CommonParameters>]
Description
Write-Output Cmdlet 會將指定的物件向下傳送至下一個命令。 如果命令是管線中的最後一個命令,對象會顯示在控制台中。
Write-Output 將對象傳送到主要管線,也稱為「輸出數據流」或「成功管線」。若要將錯誤物件傳送到錯誤管線,請使用 Write-Error。
此 Cmdlet 通常用於文稿,以顯示控制臺上的字串和其他物件。
不過,由於預設行為是在管線結尾顯示物件,所以通常不需要使用 Cmdlet。
例如,Get-Process | Write-Output
相當於 Get-Process
。
範例
範例 1:取得物件並將其寫入主控台
PS C:\> $P = Get-Process
PS C:\> Write-Output $P
PS C:\> $P
第一個命令會取得計算機上執行的進程,並將其儲存在 $P 變數中。
第二個和第三個命令會顯示控制臺上$P中的進程物件。
範例 2:將輸出傳遞至另一個 Cmdlet
PS C:\> Write-Output "test output" | Get-Member
此命令會將 「test output」 字串傳送至 Get-Member Cmdlet,此 Cmdlet 會顯示 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 參數,以透過管線將集合或陣列視為單一物件。
參數
-InputObject
指定要向下傳送管線的物件。 輸入包含 物件的變數,或輸入取得物件的命令或表達式。
類型: | PSObject[] |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-NoEnumerate
根據預設,Write-Output Cmdlet 一律會列舉其輸出。 NoEnumerate 參數會隱藏預設行為,並防止 Write-Output 列舉輸出。 NoEnumerate 參數不會影響括弧中包裝命令所建立的集合,因為括弧強制列舉。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
您可以使用管線將物件傳送至 Write-Output。
輸出
Write-Output 會傳回送為輸入的物件。