Freigeben über


Write-Host

Schreibt angepasste Ausgabe an einen Host.

Syntax

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

Beschreibung

Der Write-Host Hauptzweck des Cmdlets besteht darin, eine ausgabe für-(host)-display-only zu erzeugen, z. B. das Drucken von farbigem Text, wie wenn der Benutzer in Verbindung mit Read-Host zur Eingabe aufgefordert wird. Write-Host verwendet die ToString() -Methode, um die Ausgabe zu schreiben. Verwenden Sie zum Ausgeben von Daten in die Pipeline dagegen Write-Output oder implizite Ausgabe.

Sie können die Farbe des Texts mithilfe des ForegroundColor -Parameters angeben, und Sie können die Hintergrundfarbe mithilfe des BackgroundColor -Parameters angeben. Mit dem Separator-Parameter können Sie eine Zeichenfolge angeben, die zum Trennen der angezeigten Objekte verwendet werden soll. Das jeweilige Ergebnis hängt vom Programm ab, das PowerShell hostt.

Hinweis

Ab Windows PowerShell 5.0 ist ein Wrapper für Write-Information This ermöglicht es Ihnen, Write-HostWrite-Host die Ausgabe an den Informationsstream zu senden. Dies ermöglicht die Erfassung oder Unterdrückung von mit geschriebenen Write-Host Daten unter Beibehaltung der Abwärtskompatibilität.

Die $InformationPreference Einstellungsvariable und InformationAction der allgemeine Parameter wirken sich nicht auf Nachrichten aus Write-Host . Die Ausnahme von dieser Regel ist , wodurch die Ausgabe effektiv unterdrückt Write-Host wird-InformationAction Ignore. (siehe "Beispiel 5")

Beispiele

Beispiel 1: Schreiben in die Konsole ohne Hinzufügen einer neuen Zeile

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

no newline test second string

Mit diesem Befehl wird die Zeichenfolge "no newline test" mit dem NoNewline Parameter angezeigt.

Eine zweite Zeichenfolge wird geschrieben, aber sie landet in derselben Zeile wie die erste, da keine neue Zeile die Zeichenfolgen trennt.

Beispiel 2: Schreiben in die Konsole und Einschließen eines Trennzeichens

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

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

Dieser Befehl zeigt die geraden Zahlen von zwei bis zwölf an. Der Separator-Parameter wird verwendet, um die Zeichenfolge , +2= hinzuzufügen (Kommas, Leerzeichen, +, 2, =Leerzeichen).

Beispiel 3: Schreiben mit unterschiedlichen Text- und Hintergrundfarben

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

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

Dieser Befehl zeigt die geraden Zahlen von zwei bis zwölf an. Es verwendet den ForegroundColor Parameter, um dunkelgrünen Text und den BackgroundColor Parameter auszugeben, um einen weißen Hintergrund anzuzeigen.

Beispiel 4: Schreiben mit unterschiedlichen Text- und Hintergrundfarben

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

Red on white text.

Dieser Befehl zeigt die Zeichenfolge "Rot auf weißem Text" an. Der Text ist rot, wie durch den ForegroundColor Parameter definiert. Der Hintergrund ist weiß, wie durch den BackgroundColor Parameter definiert.

Beispiel 5: Unterdrücken der Ausgabe von 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

Diese Befehle unterdrücken effektiv die Ausgabe des Write-Host Cmdlets. Die erste verwendet den InformationAction Parameter mit dem Wert, um die Ignore Ausgabe an den Informationsstream zu unterdrücken. Im zweiten Beispiel wird der Informationsstrom des Befehls an die $null Variable umgeleitet und dadurch unterdrückt.

Parameter

-BackgroundColor

Gibt die Hintergrundfarbe an. Es gibt keinen Standardwert. Zulässige Werte für diesen Parameter:

  • Schwarz
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Grau
  • DarkGray
  • Blau
  • Grün
  • Cyan
  • Red
  • Magenta
  • Gelb
  • Weiß
Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ForegroundColor

Gibt die Textfarbe an. Es gibt keinen Standardwert. Zulässige Werte für diesen Parameter:

  • Schwarz
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Grau
  • DarkGray
  • Blau
  • Grün
  • Cyan
  • Red
  • Magenta
  • Gelb
  • Weiß
Type:ConsoleColor
Accepted values:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NoNewline

Die Zeichenfolgendarstellungen der Eingabeobjekte werden verkettet, um die Ausgabe zu bilden. Zwischen den Ausgabezeichenfolgen werden keine Leerzeichen oder Zeilen eingefügt. Nach der letzten Ausgabezeichenfolge wird kein Zeilenumbruch hinzugefügt.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Object

Objekte, die auf dem Host angezeigt werden sollen.

Type:Object
Aliases:Msg, Message
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Separator

Gibt eine Trennzeichenfolge an, die zwischen vom Host angezeigten Objekten eingefügt werden soll.

Type:Object
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Eingaben

Object

Sie können die an den Host zu schreibenden Objekte weiterreichen.

Ausgaben

None

Write-Host sendet die Objekte an den Host. und gibt keine Objekte zurück. Der Host zeigt jedoch die Objekte an, die Write-Host an ihn gesendet werden.

Hinweise

  • Beim Schreiben einer Auflistung in den Host werden Elemente der Auflistung in derselben Zeile gedruckt, die durch ein einzelnes Leerzeichen getrennt ist. Dies kann mit dem Parameter Separator überschrieben werden.

  • Nicht primitive Datentypen wie Objekte mit Eigenschaften können unerwartete Ergebnisse verursachen und keine aussagekräftige Ausgabe liefern. Wird z. B. Write-Host @{a = 1; b = 2} auf dem Host gedruckt System.Collections.DictionaryEntry System.Collections.DictionaryEntry .