Sdílet prostřednictvím


Write-Host

Zapisuje přizpůsobený výstup do hostitele.

Syntaxe

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

Description

Primárním Write-Host účelem rutiny je vytvořit výstup jen pro zobrazení (hostitele), například tisk barevného textu, jako je při zobrazení výzvy uživatele ke vstupu ve spojení s hostitelem pro čtení. Write-Hostpoužívá ToString() metoda k zápisu výstupu. Naproti tomu k výstupu dat do kanálu použijte výstup zápisu nebo implicitní výstup.

Barvu textu můžete zadat pomocí parametru ForegroundColor a pomocí parametru BackgroundColor můžete zadat barvu pozadí. Parametr Oddělovač umožňuje zadat řetězec, který se má použít k oddělení zobrazených objektů. Konkrétní výsledek závisí na programu, který hostuje PowerShell.

Poznámka:

Počínaje windows PowerShellem 5.0 je obálka, Write-Host Write-Information která umožňuje vygenerovat Write-Host výstup do informačního datového proudu. To umožňuje zachytávání nebo potlačení dat zapsaných pomocí Write-Host při zachování zpětné kompatibility.

Proměnná $InformationPreference předvoleb a InformationAction společný parametr nemají vliv na Write-Host zprávy. Výjimkou tohoto pravidla je -InformationAction Ignore, který efektivně potlačuje Write-Host výstup. (viz "Příklad 5")

Příklady

Příklad 1: Zápis do konzoly bez přidání nového řádku

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

no newline test second string

Tento příkaz zobrazí řetězec no newline test s parametrem NoNewline .

Druhý řetězec se zapíše, ale skončí na stejném řádku jako první kvůli absenci nového řádku oddělující řetězce.

Příklad 2: Zápis do konzoly a zahrnutí oddělovače

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

2, +2= 4, +2= 6, +2= 8, +2= 10, +2= 12

Tento příkaz zobrazí sudá čísla ze dvou až dvanácti. Parametr Oddělovač se používá k přidání řetězce , +2= (čárka, mezera, +, 2, =mezera).

Příklad 3: Psaní s různými barvami textu a pozadí

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

2, -> 4, -> 6, -> 8, -> 10, -> 12

Tento příkaz zobrazí sudá čísla ze dvou až dvanácti. Tento parametr používá k výstupu ForegroundColor tmavě zeleného BackgroundColor textu a parametru k zobrazení bílého pozadí.

Příklad 4: Psaní s různými barvami textu a pozadí

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

Red on white text.

Tento příkaz zobrazí řetězec "Červený na bílém textu". Text je červený, jak je definován parametrem ForegroundColor . Pozadí je bílé, jak je definováno parametrem BackgroundColor .

Příklad 5: Potlačení výstupu z hostitele pro zápis

# 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

Tyto příkazy efektivně potlačí výstup rutiny Write-Host . První používá InformationAction parametr s Ignore hodnotou k potlačení výstupu do informačního streamu. Druhý příklad přesměruje informační proud příkazu na proměnnou $null a potlačuje ho. Další informace najdete v tématu about_Output_Streams.

Parametry

-BackgroundColor

Určuje barvu pozadí. Neexistuje výchozí nastavení. Tento parametr přijímá tyto hodnoty:

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Gray
  • DarkGray
  • Blue
  • Green
  • Cyan
  • Red
  • Magenta
  • Yellow
  • White
Typ:ConsoleColor
Přípustné hodnoty:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-ForegroundColor

Určuje barvu textu. Neexistuje výchozí nastavení. Tento parametr přijímá tyto hodnoty:

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Gray
  • DarkGray
  • Blue
  • Green
  • Cyan
  • Red
  • Magenta
  • Yellow
  • White
Typ:ConsoleColor
Přípustné hodnoty:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-NoNewline

Řetězcové reprezentace vstupních objektů jsou zřetězeny tak, aby vytvořily výstup. Mezi výstupní řetězce se nevkládají žádné mezery ani nové čáry. Za poslední výstupní řetězec se nepřidá žádný nový řádek.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Object

Objekty, které se mají zobrazit v hostiteli

Typ:Object
Aliasy:Msg, Message
Position:0
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Separator

Určuje řetězec oddělovače, který se má vložit mezi objekty zobrazené hostitelem.

Typ:Object
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

Object

Objekty můžete zapsat do hostitele do této rutiny.

Výstupy

None

Tato rutina nevrátí žádný výstup. Odesílá objekty hostiteli. Hostitel zobrazí objekty, které tato rutina odešle.

Poznámky

  • Při zápisu kolekce na hostitele se prvky kolekce vytisknou na stejném řádku odděleném jedním mezerou. To lze přepsat pomocí parametru Oddělovač .

  • Ne primitivní datové typy, jako jsou objekty s vlastnostmi, můžou způsobit neočekávané výsledky a nedají smysluplný výstup. Například Write-Host @{a = 1; b = 2} se vytiskne System.Collections.DictionaryEntry System.Collections.DictionaryEntry na hostitele.