about_Output_Streams
Kurze Beschreibung
Erläutert die Verfügbarkeit und den Zweck von Ausgabedatenströmen in PowerShell.
Lange Beschreibung
PowerShell stellt mehrere Ausgabedatenströme bereit. Die Streams bieten Kanäle für verschiedene Arten von Nachrichten. Sie können mithilfe des zugeordneten Cmdlets oder der Umleitung in diese Datenströme schreiben. Weitere Informationen finden Sie unter about_Redirection.
PowerShell unterstützt die folgenden Ausgabedatenströme.
Stream # | BESCHREIBUNG | Eingeführt in | Cmdlet schreiben |
---|---|---|---|
1 | Erfolgsstream | PowerShell 2.0 | Write-Output |
2 | Fehlerdatenstrom | PowerShell 2.0 | Write-Error |
3 | Warnungsstream | PowerShell 2.0 | Write-Warning |
4 | Ausführlicher Datenstrom | PowerShell 2.0 | Write-Verbose |
5 | Debugdatenstrom | PowerShell 2.0 | Write-Debug |
6 | Informationsstream | PowerShell 5.0 | Write-Information |
– | Statusdatenstrom | PowerShell 2.0 | Write-Progress |
Hinweis
Der Statusdatenstrom unterstützt keine Umleitung.
Erfolgsstream
Der Erfolgsdatenstrom ist der Standarddatenstrom für normale, erfolgreiche Ergebnisse.
Verwenden Sie das Write-Output
Cmdlet, um Objekte explizit in diesen Datenstrom zu schreiben. Dieser Datenstrom wird zum Übergeben von Objekten über die PowerShell-Pipeline verwendet. Der Erfolgsdatenstrom ist mit dem Stdout-Datenstrom für systemeigene Anwendungen verbunden.
Fehlerdatenstrom
Der Fehlerdatenstrom ist der Standarddatenstrom für Fehlerergebnisse. Verwenden Sie das Write-Error
Cmdlet, um explizit in diesen Datenstrom zu schreiben. Der Fehlerdatenstrom ist mit dem Stderr-Stream für systemeigene Anwendungen verbunden. Unter den meisten Bedingungen können diese Fehler die Ausführungspipeline beenden. Fehler, die in diesen Datenstrom geschrieben wurden, werden auch die $Error
automatische Variable hinzugefügt. Weitere Informationen finden Sie unter about_Automatic_Variables.
Warnungsstream
Der Warnungsstream ist für Fehlerbedingungen vorgesehen, die weniger schwer sind als Fehler, die in den Fehlerdatenstrom geschrieben wurden. Unter normalen Bedingungen beenden diese Warnungen die Ausführung nicht. Warnungen werden nicht in die $Error
automatische Variable geschrieben. Verwenden Sie das Write-Warning
Cmdlet, um explizit in diesen Datenstrom zu schreiben.
Ausführlicher Datenstrom
Der verbose Stream ist für Nachrichten gedacht, die Benutzern bei der Problembehandlung von Befehlen helfen, während sie interaktiv oder über ein Skript ausgeführt werden. Verwenden Sie das Write-Verbose
Cmdlet, um Nachrichten explizit in diesen Datenstrom zu schreiben. Viele Cmdlets bieten ausführliche Ausgabe, die hilfreich ist, um die internen Funktionsweisen des Cmdlets zu verstehen. Die ausführlichen Nachrichten werden nur ausgegeben, wenn Sie den -Verbose
allgemeinen Parameter verwenden. Weitere Informationen findest du unter about_CommonParameters.
Debugdatenstrom
Der Debugdatenstrom wird für Nachrichten verwendet, die Skriptern helfen, zu verstehen, warum ihr Code fehlschlägt. Verwenden Sie das Write-Debug
Cmdlet, um explizit in diesen Datenstrom zu schreiben. Die Debugnachrichten werden nur ausgegeben, wenn Sie den -Debug
allgemeinen Parameter verwenden. Weitere Informationen findest du unter about_CommonParameters.
Debugnachrichten sind für Skript- und Cmdlet-Entwickler vorgesehen, die mehr als Endbenutzer sind. Diese Debugnachrichten können interne Details enthalten, die für eine umfassende Problembehandlung erforderlich sind.
Informationsstream
Der Informationsstream soll Nachrichten bereitstellen, die einem Benutzer helfen, zu verstehen, was ein Skript tut. Sie kann auch von Entwicklern als zusätzlicher Datenstrom verwendet werden, der zum Übergeben von Informationen über PowerShell verwendet wird. Der Entwickler kann Daten streamen und spezifische Behandlung für diesen Datenstrom haben. Verwenden Sie das Write-Information
Cmdlet, um explizit in diesen Datenstrom zu schreiben.
Statusdatenstrom
Der Statusdatenstrom wird für Nachrichten verwendet, die den Fortschritt in länger ausgeführten Befehlen und Skripts kommunizieren. Verwenden Sie das Write-Progress
Cmdlet, um Nachrichten explizit in diesen Datenstrom zu schreiben. Der Statusdatenstrom unterstützt keine Umleitung.