Write-Host
Skriver anpassade utdata till en värd.
Syntax
Write-Host
[[-Object] <Object>]
[-NoNewline]
[-Separator <Object>]
[-ForegroundColor <ConsoleColor>]
[-BackgroundColor <ConsoleColor>]
[<CommonParameters>]
Description
Den Write-Host
cmdletens främsta syfte är att skapa utdata endast för (värd)-visning, till exempel att skriva ut färgad text som när användaren uppmanas att ange indata tillsammans med Read-Host.
Write-Host
använder metoden ToString() för att skriva utdata. Om du däremot vill mata ut data till pipelinen använder du Write-Output eller implicita utdata.
Du kan ange textfärgen med hjälp av parametern ForegroundColor
och du kan ange bakgrundsfärgen med hjälp av parametern BackgroundColor
. Med parametern Avgränsare kan du ange en sträng som ska användas för att separera visade objekt. Det specifika resultatet beror på vilket program som är värd för PowerShell.
Not
Från och med Windows PowerShell 5.0 är Write-Host
en omslutning för Write-Information
Detta gör att du kan använda Write-Host
för att generera utdata till informationsströmmen. På så sätt kan samla in eller undertryckning av data som skrivits med Write-Host
samtidigt som bakåtkompatibiliteten bevaras.
Den $InformationPreference
inställningsvariabeln och InformationAction
vanliga parametern påverkar inte Write-Host
meddelanden. Undantaget till den här regeln är -InformationAction Ignore
, vilket effektivt undertrycker Write-Host
utdata. (se "Exempel 5")
Exempel
Exempel 1: Skriv till konsolen utan att lägga till en ny rad
Write-Host "no newline test " -NoNewline
Write-Host "second string"
no newline test second string
Det här kommandot visar strängen "no newline test" med parametern NoNewline
.
En andra sträng skrivs, men den hamnar på samma rad som den första på grund av att det inte finns någon ny rad som avgränsar strängarna.
Exempel 2: Skriv till konsolen och inkludera en avgränsare
Write-Host (2,4,6,8,10,12) -Separator ", +2= "
2, +2= 4, +2= 6, +2= 8, +2= 10, +2= 12
Det här kommandot visar jämna tal från två till tolv. Parametern Avgränsare används för att lägga till strängen , +2=
(kommatecken, blanksteg, +
, 2
, =
, blanksteg).
Exempel 3: Skriva med olika text- och bakgrundsfärger
Write-Host (2,4,6,8,10,12) -Separator ", -> " -ForegroundColor DarkGreen -BackgroundColor White
2, -> 4, -> 6, -> 8, -> 10, -> 12
Det här kommandot visar jämna tal från två till tolv. Den använder parametern ForegroundColor
för att mata ut mörkgrön text och parametern BackgroundColor
för att visa en vit bakgrund.
Exempel 4: Skriv med olika text- och bakgrundsfärger
Write-Host "Red on white text." -ForegroundColor red -BackgroundColor white
Red on white text.
Det här kommandot visar strängen "Röd på vit text". Texten är röd enligt definitionen i parametern ForegroundColor
. Bakgrunden är vit, enligt definitionen i parametern BackgroundColor
.
Exempel 5: Utelämna utdata från 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
Dessa kommandon förhindrar effektivt utdata från cmdleten Write-Host
. Den första använder parametern InformationAction
med Ignore
-värdet för att utelämna utdata till informationsströmmen.
Det andra exemplet omdirigerar kommandots informationsström till variabeln $null
och undertrycker den. Mer information finns i about_Output_Streams.
Parametrar
-BackgroundColor
Anger bakgrundsfärgen. Det finns inget standardvärde. De godtagbara värdena för den här parametern är:
Black
DarkBlue
DarkGreen
DarkCyan
DarkRed
DarkMagenta
DarkYellow
Gray
DarkGray
Blue
Green
Cyan
Red
Magenta
Yellow
White
Typ: | ConsoleColor |
Godkända värden: | Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-ForegroundColor
Anger textfärgen. Det finns inget standardvärde. De godtagbara värdena för den här parametern är:
Black
DarkBlue
DarkGreen
DarkCyan
DarkRed
DarkMagenta
DarkYellow
Gray
DarkGray
Blue
Green
Cyan
Red
Magenta
Yellow
White
Typ: | ConsoleColor |
Godkända värden: | Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-NoNewline
Strängrepresentationerna av indataobjekten sammanfogas för att bilda utdata. Inga blanksteg eller nya radrutor infogas mellan utdatasträngarna. Ingen ny rad läggs till efter den senaste utdatasträngen.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Object
Objekt som ska visas i värden.
Typ: | Object |
Alias: | Msg, Message |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Separator
Anger en avgränsarsträng som ska infogas mellan objekt som visas av värden.
Typ: | Object |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
Du kan skicka objekt som ska skrivas till värden till den här cmdleten.
Utdata
None
Den här cmdleten returnerar inga utdata. Den skickar objekten till värden. Värden visar de objekt som den här cmdleten skickar till den.
Kommentarer
När du skriver en samling till värden skrivs elementen i samlingen ut på samma rad avgränsade med ett enda blanksteg. Detta kan åsidosättas med parametern Avgränsare.
Icke-primitiva datatyper, till exempel objekt med egenskaper, kan orsaka oväntade resultat och inte ge meningsfulla utdata. Till exempel skriver
Write-Host @{a = 1; b = 2}
utSystem.Collections.DictionaryEntry System.Collections.DictionaryEntry
till värden.