共用方式為


Write-Host

將自訂輸出寫入主機。

語法

Default (預設值)

Write-Host
    [[-Object] <Object>]
    [-NoNewline]
    [-Separator <Object>]
    [-ForegroundColor <ConsoleColor>]
    [-BackgroundColor <ConsoleColor>]
    [<CommonParameters>]

Description

Write-Host Cmdlet 的主要用途是產生 for-(host)-display-only 輸出,例如,提示使用者搭配 Read-Host輸入時,列印彩色文字。 Write-Host 會使用 ToString() 方法來寫入輸出。 相反地,若要將數據輸出至管線,請使用 Write-Output 或隱含輸出。

您可以使用 ForegroundColor 參數來指定文字的色彩,而且您可以使用 BackgroundColor 參數來指定背景色彩。 Separator 參數可讓您指定要用來分隔顯示物件的字串。 特定結果取決於裝載 PowerShell 的程式。

備註

從 Windows PowerShell 5.0 開始,Write-HostWrite-Information 的包裝器。這允許您使用 Write-Host 將輸出發送到信息流。 這可讓 擷取隱藏 使用 Write-Host 寫入的數據,同時保留回溯兼容性。

$InformationPreference 喜好設定變數和一般參數 InformationAction 不會影響 Write-Host 訊息。 此規則的例外狀況是 -InformationAction Ignore,這實際上會隱藏 Write-Host 輸出。 (請參閱“範例 5”)

範例

範例 1:寫入主控台而不新增新行

Write-Host "no newline test " -NoNewline
Write-Host "second string"
no newline test second string

此命令會以 NoNewline 參數顯示字串 『no newline test』。

第二個字串會寫入,但最後會以與第一行相同,因為沒有分隔字串的新行。

範例 2:寫入主控台並包含分隔符

Write-Host (2,4,6,8,10,12) -Separator ", +2= "
2, +2= 4, +2= 6, +2= 8, +2= 10, +2= 12

此命令會顯示從 2 到 12 的偶數。 分隔符 參數可用來新增字串 , +2= (逗號、空格、+2=、空格)。

範例 3:使用不同的文字和背景色彩撰寫

Write-Host (2,4,6,8,10,12) -Separator ", -> " -ForegroundColor DarkGreen -BackgroundColor White
2, -> 4, -> 6, -> 8, -> 10, -> 12

此命令會顯示從 2 到 12 的偶數。 它會使用 ForegroundColor 參數來輸出深綠色文字,並使用 BackgroundColor 參數來顯示白色背景。

範例 4:使用不同的文字和背景色彩撰寫

Write-Host "Red on white text." -ForegroundColor red -BackgroundColor white
Red on white text.

此命令會顯示字串「白色文字上的紅色」。文字為紅色,如 ForegroundColor 參數所定義。 背景為白色,如 BackgroundColor 參數所定義。

範例 5:隱藏來自 Write-Host 的輸出

# The following two statements can be used to effectively suppress output from Write-Host
Write-Host "I won't print" -InformationAction Ignore
Write-Host "I won't print" 6> $null

這些命令會有效抑制 Write-Host Cmdlet 的輸出。 第一個參數會使用 InformationAction 參數搭配 Ignore Value 來隱藏信息數據流的輸出。 第二個範例會將命令的資訊數據流重新導向至 $null 變數,因而隱藏它。 如需詳細資訊,請參閱 about_Output_Streams

參數

-BackgroundColor

指定背景色彩。 沒有預設值。 此參數可接受的值為:

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Gray
  • DarkGray
  • Blue
  • Green
  • Cyan
  • Red
  • Magenta
  • Yellow
  • White

參數屬性

類型:ConsoleColor
預設值:None
接受的值:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-ForegroundColor

指定文字色彩。 沒有預設值。 此參數可接受的值為:

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Gray
  • DarkGray
  • Blue
  • Green
  • Cyan
  • Red
  • Magenta
  • Yellow
  • White

參數屬性

類型:ConsoleColor
預設值:None
接受的值:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-NoNewline

輸入物件的字串表示會串連以形成輸出。 輸出字串之間不會插入空格或換行符。 最後一個輸出字串之後不會新增任何換行符。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Object

要顯示在主機中的物件。

參數屬性

類型:Object
預設值:None
支援萬用字元:False
不要顯示:False
別名:味精, 訊息

參數集

(All)
Position:0
必要:False
來自管線的值:True
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Separator

指定要在主機所顯示物件之間插入的分隔符字串。

參數屬性

類型:Object
預設值: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

輸入

Object

您可以使用管線將物件寫入主機至此 Cmdlet。

輸出

None

此 Cmdlet 不會傳回任何輸出。 它會將物件傳送至主機。 主機會顯示此 Cmdlet 傳送給它的物件。

備註

  • 將集合寫入主機時,集合的專案會列印在以單一空格分隔的相同行上。 這可以使用 分隔符 參數覆寫。

  • 非基本數據類型,例如具有屬性的物件,可能會導致非預期的結果,而且不會提供有意義的輸出。 例如,Write-Host @{a = 1; b = 2} 會將 System.Collections.DictionaryEntry System.Collections.DictionaryEntry 印印到主機。