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


О потоках вывода

Краткое описание

Объясняет доступность и назначение выходных потоков в PowerShell.

Подробное описание

PowerShell предоставляет несколько потоков вывода. Потоки предоставляют каналы для различных типов сообщений. Эти потоки можно записать с помощью связанного командлета или перенаправления. Дополнительные informationсведения см. в about_Redirection.

PowerShell поддерживает следующие выходные потоки.

Поток # Description Представлено в Командлет записи
1 Success поток PowerShell 2.0 Write-Output
2 Error поток PowerShell 2.0 Write-Error
3 Warning поток PowerShell 2.0 Write-Warning
4 Verbose поток PowerShell 2.0 Write-Verbose
5 Debug поток PowerShell 2.0 Write-Debug
6 Information поток PowerShell 5.0 Write-Information
Н/Д Progress поток PowerShell 2.0 Write-Progress

Примечание.

Поток Progress не поддерживает перенаправление.

Success поток

Поток Success — это поток по умолчанию для обычных успешных результатов. Используйте командлет для явной Write-Output записи объектов в этот поток. Этот поток используется для передачи объектов через конвейер PowerShell. Поток Success подключен к потоку stdout для собственных приложений.

Error поток

Поток Error — это поток по умолчанию для error результатов. Используйте командлет для явной Write-Error записи в этот поток. Поток Error подключен к потоку stderr для собственных приложений. В большинстве случаев эти ошибки могут завершить конвейер выполнения. Ошибки, записанные в этот поток, также добавляются в автоматическую $Error переменную. Дополнительные informationсведения см. в разделе about_Automatic_Variables.

Warning поток

Поток Warning предназначен для error условий, которые менее серьезны, чем ошибки, записанные в Error поток. В обычных условиях эти предупреждения не завершаются выполнением. Предупреждения не записываются в автоматическую $Error переменную. Используйте командлет для явной Write-Warning записи в этот поток.

Verbose поток

Поток Verbose предназначен для сообщений, которые помогают пользователям устранять неполадки при интерактивном выполнении или из скрипта. Используйте командлет для явной Write-Verbose записи сообщений в этот поток. Многие командлеты предоставляют verbose выходные данные, полезные для понимания внутренних действий командлета. Сообщения verbose выводятся только при использовании -Verbose общего параметра. Дополнительные informationсведения см. в about_CommonParameters.

Debug поток

Поток Debug используется для сообщений, которые помогают скриптам понять, почему их код завершается сбоем. Используйте командлет для явной Write-Debug записи в этот поток. Сообщения debug выводятся только при использовании -Debug общего параметра. Дополнительные informationсведения см. в about_CommonParameters.

Debug сообщения предназначены для разработчиков скриптов и командлетов больше, чем конечных пользователей. Эти debug сообщения могут содержать внутренние сведения, необходимые для глубокого устранения неполадок.

Information поток

Поток Information предназначен для предоставления сообщений, которые помогают пользователю понять, что делает скрипт. Его также можно использовать разработчиками в качестве дополнительного потока, используемого для передачи information через PowerShell. Разработчик может пометить потоковые данные и иметь конкретную обработку для этого потока. Используйте командлет для явной Write-Information записи в этот поток.

Write-Host также записывается в Information поток. Разница между командлетами заключается в том, что Write-Host также записывается в консоль узла, если вы не перенаправляете Information поток. Write-Information записывается только в Information поток.

Progress поток

Поток Progress используется для сообщений, взаимодействующих progress в более длительных командах и сценариях. Используйте командлет для явной Write-Progress записи сообщений в этот поток. Поток Progress не поддерживает перенаправление.

См. также