Write-Output

將指定的物件寫入管線。

語法

Default (預設值)

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

Description

將指定的物件寫入管線。 如果 Write-Output 是管線中的最後一個指令,物件會顯示在主控台中。

Write-Output 將物件傳送至主要管線,也稱為 成功串流。 要將錯誤物件傳送到錯誤串流,請使用 Write-Error。

此 cmdlet 通常用於腳本中,以顯示主控台上的字串及其他物件。 其中一個內建別名是 ,Write-Outputecho類似於其他使用 echo。 預設行為是在管線結束時顯示輸出。 在 PowerShell 中,通常不需要在預設顯示輸出的情況下使用 cmdlet。 例如, 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 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 ,指令小子總是枚舉其輸出。 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

此指令檔會回傳作為輸入的物件。

備註

PowerShell 包含下列 Write-Output的別名:

  • 所有平臺:

    • echo
  • 窗戶:

    • write