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-Host
Write-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
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 gedrucktSystem.Collections.DictionaryEntry System.Collections.DictionaryEntry
.