Udostępnij za pomocą


Write-Host

Zapisuje dostosowane dane wyjściowe na hoście.

Składnia

Default (Domyślna)

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

Opis

Podstawowym Write-Host celem polecenia cmdlet jest wygenerowanie danych wyjściowych tylko do wyświetlania(hosta), takich jak drukowanie kolorowego tekstu, na przykład podczas monitowania użytkownika o dane wejściowe w połączeniu z funkcją Read-Host. Write-Host Używa metody ToString() do zapisania danych wyjściowych. Natomiast w celu wyprowadzania danych wyjściowych do potoku użyj funkcji Write-Output lub niejawnych danych wyjściowych.

Kolor tekstu można określić przy użyciu parametru ForegroundColor, a kolor tła można określić przy użyciu parametru BackgroundColor. Parametr Separator umożliwia określenie ciągu, który ma być używany do oddzielania wyświetlanych obiektów. Konkretny wynik zależy od programu, który hostuje program PowerShell.

Uwaga / Notatka

Począwszy od programu Windows PowerShell 5.0, Write-Host jest obudową dla Write-Information. Umożliwia to użycie Write-Host do przekazywania danych wyjściowych do strumienia informacji. Umożliwia to przechwytywanie lub pomijanie danych zapisywanych przy użyciu Write-Host przy zachowaniu zgodności z poprzednimi wersjami.

Zmienna preferencji $InformationPreference i wspólny parametr InformationAction nie mają wpływu na komunikaty Write-Host. Wyjątkiem od tej reguły jest -InformationAction Ignore, co skutecznie pomija Write-Host danych wyjściowych. (zobacz "Przykład 5")

Przykłady

Przykład 1: Zapisywanie w konsoli bez dodawania nowego wiersza

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

To polecenie wyświetla ciąg "no newline test" z parametrem NoNewline.

Drugi ciąg jest zapisywany, ale kończy się na tym samym wierszu co pierwszy ze względu na brak nowego wiersza oddzielającego ciągi.

Przykład 2. Zapisywanie w konsoli i dołączanie separatora

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

To polecenie wyświetla liczby parzyse z dwóch do dwunastu. Parametr Separator służy do dodawania ciągu , +2= (przecinek, spacja, +, 2, =spacja).

Przykład 3. Zapisywanie przy użyciu różnych kolorów tekstu i tła

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

To polecenie wyświetla liczby parzyse z dwóch do dwunastu. Używa parametru ForegroundColor do wyprowadzania ciemnego zielonego tekstu i parametru BackgroundColor w celu wyświetlenia białego tła.

Przykład 4. Zapisywanie przy użyciu różnych kolorów tekstu i tła

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

To polecenie wyświetla ciąg "Czerwony w białym tekście". Tekst jest czerwony, zgodnie z definicją parametru ForegroundColor . Tło jest białe, zgodnie z definicją parametru BackgroundColor .

Przykład 5. Pomijanie danych wyjściowych z 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

Te polecenia skutecznie pomijają dane wyjściowe Write-Host polecenia cmdlet. Pierwszy używa parametru InformationAction z wartością , Ignore aby pominąć dane wyjściowe strumienia informacji. Drugi przykład przekierowuje strumień informacji polecenia do zmiennej $null , a tym samym pomija go. Aby uzyskać więcej informacji, zobacz about_Output_Strumienie.

Parametry

-BackgroundColor

Określa kolor tła. Nie ma wartości domyślnej. Dopuszczalne wartości tego parametru to:

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

Właściwości parametru

Typ:ConsoleColor
Domyślna wartość:None
Dopuszczalne wartości:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-ForegroundColor

Określa kolor tekstu. Nie ma wartości domyślnej. Dopuszczalne wartości tego parametru to:

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

Właściwości parametru

Typ:ConsoleColor
Domyślna wartość:None
Dopuszczalne wartości:Black, DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow, Gray, DarkGray, Blue, Green, Cyan, Red, Magenta, Yellow, White
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-NoNewline

Reprezentacje ciągów obiektów wejściowych są łączone w celu utworzenia danych wyjściowych. Między ciągami wyjściowymi nie są wstawione spacje ani nowe linie. Nie dodano nowego wiersza po ostatnim ciągu danych wyjściowych.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Object

Obiekty do wyświetlenia na hoście.

Właściwości parametru

Typ:Object
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Msg, Komunikat

Zestawy parametrów

(All)
Position:0
Obowiązkowy:False
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Separator

Określa ciąg separatora, który ma być wstawiany między obiektami wyświetlanymi przez hosta.

Właściwości parametru

Typ:Object
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

Object

Można potokować obiekty, które mają być zapisywane na hoście w tym poleceniu cmdlet.

Dane wyjściowe

None

To polecenie cmdlet nie zwraca żadnych danych wyjściowych. Wysyła on obiekty do hosta. Host wyświetla obiekty, które wysyła do niego to polecenie cmdlet.

Uwagi

  • Podczas zapisywania kolekcji na hoście elementy kolekcji są drukowane w tym samym wierszu oddzielonym pojedynczą spacją. Można to zastąpić parametrem Separator .

  • Typy danych inne niż pierwotne, takie jak obiekty z właściwościami, mogą powodować nieoczekiwane wyniki i nie dostarczać znaczących danych wyjściowych. Na przykład Write-Host @{a = 1; b = 2} zostanie wydrukowany System.Collections.DictionaryEntry System.Collections.DictionaryEntry na hoście.