Поделиться через


Write-Output

Записывает указанные объекты в конвейер.

Синтаксис

Default (по умолчанию)

Write-Output
    [-InputObject] <PSObject[]>
    [-NoEnumerate]
    [<CommonParameters>]

Описание

Записывает указанные объекты в конвейер. Если Write-Output является последней командой в конвейере, объекты отображаются в консоли.

Write-Output отправляет объекты в основной конвейер, также известный как поток успешного . Чтобы отправить объекты ошибок в поток ошибок, используйте Write-Error.

Этот командлет обычно используется в сценариях для отображения строк и других объектов в консоли. Один из встроенных псевдонимов для Write-Output — это echo, подобно другим оболочкам, которые используют echo. Поведение по умолчанию — отображение выходных данных в конце конвейера. В PowerShell обычно не требуется использовать командлет в экземплярах, где выходные данные отображаются по умолчанию. Например, Get-Process | Write-Output эквивалентен Get-Process. Или echo "Home directory: $HOME" можно написать как "Home directory: $HOME".

По умолчанию Write-Output перечисляет объекты в коллекции. Однако Write-Output также может передавать коллекции по конвейеру в виде одного объекта с параметром NoEnumerate.

Примеры

Пример 1. Получение объектов и их запись в консоль

В этом примере результаты командлета Get-Process хранятся в переменной $P. Командлет Write-Output отображает объекты процесса $P на консоль.

$P = Get-Process
Write-Output $P

Пример 2. Передача выходных данных другому cmdlet

Эта команда направляет строку "test output" в командлет Get-Member, который отображает члены класса System.String, показывая, что строка была передана по конвейеру.

Write-Output "test output" | Get-Member

Пример 3. Подавление перечисления в выходных данных

Эта команда добавляет параметр NoEnumerate для обработки коллекции или массива как одного объекта через конвейер.

Write-Output 1,2,3 | Measure-Object
Count    : 3
...
Write-Output 1,2,3 -NoEnumerate | Measure-Object
Count    : 1
...

Параметры

-InputObject

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

Свойства параметра

Тип:

PSObject[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:0
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-NoEnumerate

По умолчанию командлет Write-Output всегда перечисляет выходные данные. Параметр NoEnumerate подавляет поведение по умолчанию и предотвращает перечисление выходных данных Write-Output. Параметр NoEnumerate не действует, если команда заключена в скобки, так как скобки принуждают к перечислению. Например, (Write-Output 1,2,3 -NoEnumerate) по-прежнему перечисляет массив.

Параметр NoEnumerate полезен только в конвейере. Попытка увидеть эффекты NoEnumerate в консоли проблематична, так как PowerShell добавляет Out-Default в конец каждой командной строки, что приводит к перечислению. Но если передать Write-Output -NoEnumerate другому командлету, подчиненный командлет получает объект коллекции, а не перечисленные элементы коллекции.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

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

PSObject

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

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

PSObject

Этот командлет возвращает объекты, отправленные в качестве входных данных.

Примечания

PowerShell включает следующие псевдонимы для Write-Output:

  • Все платформы:

    • echo
  • Виндоус:

    • write