Write-Host

Записывает пользовательские выходные данные в узел.

Синтаксис

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

Описание

Write-Host Основной целью командлета является создание выходных данных только для отображения(host), таких как печать цветного текста, например при появлении запроса пользователя на ввод в сочетании с Read-Host. Write-Hostиспользует метод ToString() для записи выходных данных. Напротив, для вывода данных в конвейер используйте выходные данные записи или неявные выходные данные.

Можно указать цвет текста с помощью ForegroundColor параметра, и можно указать цвет фона с помощью BackgroundColor параметра. Параметр Separator позволяет указать строку, которая будет использоваться для разделения отображаемых объектов. Конкретный результат зависит от программы, в которой размещается PowerShell.

Примечание.

Начиная с Windows PowerShell 5.0, Write-Host это оболочка для Write-Information этого позволяет использовать Write-Host выходные данные для потока информации. Это позволяет записывать или подавлять записанные данные при Write-Host сохранении обратной совместимости.

Переменная предпочтения и InformationAction общий $InformationPreference параметр не влияют на Write-Host сообщения. Исключением из этого правила является -InformationAction Ignoreто, что фактически подавляет Write-Host выходные данные. (см. пример 5)

Примеры

Пример 1. Запись в консоль без добавления новой строки

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

no newline test second string

Эта команда отображает строку "нет нового теста" с параметром NoNewline .

Вторая строка записывается, но она заканчивается на той же строке, что и первая из-за отсутствия новой строки, разделяющей строки.

Пример 2. Запись в консоль и включение разделителя

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

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

Эта команда отображает четные числа от двух до двенадцати. Параметр разделителя используется для добавления строки (запятая , +2= , пробел, +, , =2пробел).

Пример 3. Запись с различными цветами текста и фона

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

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

Эта команда отображает четные числа от двух до двенадцати. Он использует ForegroundColor параметр для вывода темно-зеленого текста и BackgroundColor параметра для отображения белого фона.

Пример 4. Запись с различными цветами текста и фона

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

Red on white text.

Эта команда отображает строку "Красный в белом тексте". Текст красный, как определено параметром ForegroundColor . Фон является белым, как определено параметром BackgroundColor .

Пример 5. Отключение выходных данных из узла записи

# 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

Эти команды эффективно подавляют выходные данные командлета Write-Host . Первый использует InformationAction параметр со Ignore значением для подавления выходных данных в поток информации. Второй пример перенаправляет поток сведений команды в $null переменную и тем самым подавляет его. Дополнительные сведения см. в about_Output_Потоки.

Параметры

-BackgroundColor

Определяет цвет фона. Значение по умолчанию отсутствует. Допустимые значения для этого параметра:

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Gray
  • DarkGray
  • Blue
  • Green
  • Cyan
  • Red
  • Magenta
  • Yellow
  • White
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

Определяет цвет текста. Значение по умолчанию отсутствует. Допустимые значения для этого параметра:

  • Black
  • DarkBlue
  • DarkGreen
  • DarkCyan
  • DarkRed
  • DarkMagenta
  • DarkYellow
  • Gray
  • DarkGray
  • Blue
  • Green
  • Cyan
  • Red
  • Magenta
  • Yellow
  • White
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

Строковые представления входных объектов объединяются для формирования выходных данных. Пробелы или новые строки не вставляются между выходными строками. Новая строка не добавляется после последней выходной строки.

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

-Object

Объекты, отображаемые на узле.

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

-Separator

Задает строку разделителя для вставки между объектами, отображаемыми узлом.

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

Входные данные

Object

Объекты можно передать на узел в этот командлет.

Выходные данные

None

Этот командлет не возвращает выходные данные. Он отправляет объекты на узел. В узле отображаются объекты, отправляемые командлетом.

Примечания

  • При написании коллекции на узел элементы коллекции печатаются на одной строке, разделенной одним пробелом. Это можно переопределить с помощью параметра Разделителя .

  • Немитивные типы данных, такие как объекты со свойствами, могут привести к непредвиденным результатам и не предоставлять значимые выходные данные. Например, Write-Host @{a = 1; b = 2} будет выводиться System.Collections.DictionaryEntry System.Collections.DictionaryEntry на узел.