Write-Output
Schreibt die angegebenen Objekte in die Pipeline.
Syntax
Default (Standard)
Write-Output
[-InputObject] <PSObject[]>
[-NoEnumerate]
[<CommonParameters>]
Beschreibung
Schreibt die angegebenen Objekte in die Pipeline. Wenn Write-Output es sich um den letzten Befehl in der Pipeline handelt, werden die Objekte in der Konsole angezeigt.
Write-Output sendet Objekte an die primäre Pipeline, auch bekannt als Erfolgsstream. Um Fehlerobjekte an den Fehlerdatenstrom zu senden, verwenden Sie Write-Error.
Dieses Cmdlet wird in der Regel in Skripts zum Anzeigen von Zeichenfolgen und anderen Objekten auf der Konsole verwendet. Einer der integrierten Aliase ist Write-Output und ähnelt echo anderen Shells, die verwendet werden echo. Das Standardverhalten besteht darin, die Ausgabe am Ende einer Pipeline anzuzeigen. In PowerShell ist es in der Regel nicht erforderlich, das Cmdlet in Instanzen zu verwenden, in denen die Ausgabe standardmäßig angezeigt wird.
Get-Process | Write-Output entspricht beispielsweise Get-Process. Oder kann geschrieben werden, echo "Home directory: $HOME""Home directory: $HOME".
Standardmäßig Write-Output werden Objekte in einer Auflistung aufgezählt.
Write-Output Kann jedoch auch Auflistungen als einzelnes Objekt mit dem Parameter NoEnumerate an die Pipeline übergeben.
Beispiele
Beispiel 1: Abrufen von Objekten und Schreiben in die Konsole
In diesem Beispiel werden die Ergebnisse des Get-Process Cmdlets in der $P Variablen gespeichert. Das Write-Output Cmdlet zeigt die Prozessobjekte in $P der Konsole an.
$P = Get-Process
Write-Output $P
Beispiel 2: Übergeben der Ausgabe an ein anderes Cmdlet
Mit diesem Befehl wird die Zeichenfolge "Testausgabe" an das Get-Member Cmdlet weitergeleitet, das die Member der System.String-Klasse anzeigt und zeigt, dass die Zeichenfolge entlang der Pipeline übergeben wurde.
Write-Output "test output" | Get-Member
Beispiel 3: Unterdrücken der Enumeration in der Ausgabe
Mit diesem Befehl wird der NoEnumerate-Parameter hinzugefügt, um eine Auflistung oder ein Array als einzelnes Objekt über die Pipeline zu behandeln.
Write-Output 1,2,3 | Measure-Object
Count : 3
...
Write-Output 1,2,3 -NoEnumerate | Measure-Object
Count : 1
...
Parameter
-InputObject
Gibt die Objekte an, die an die Pipeline gesendet werden sollen. Geben Sie eine Variable ein, die die Objekte enthält, oder geben Sie einen Befehl oder Ausdruck ein, der die Objekte ermittelt.
Parametereigenschaften
| Typ: | PSObject[] |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-NoEnumerate
Standardmäßig listet das Write-Output Cmdlet die Ausgabe immer auf. Der Parameter NoEnumerate unterdrückt das Standardverhalten und verhindert Write-Output das Aufzählen der Ausgabe. Der Parameter NoEnumerate hat keine Auswirkung, wenn der Befehl in Klammern eingeschlossen wird, da die Enumeration der Klammern erzwungen wird. Beispielsweise (Write-Output 1,2,3 -NoEnumerate) zählt das Array weiterhin auf.
Der Parameter NoEnumerate ist nur in einer Pipeline nützlich. Der Versuch, die Auswirkungen von NoEnumerate in der Konsole zu sehen, ist problematisch, da PowerShell am Ende jeder Befehlszeile hinzufügt Out-Default , was zu Enumeration führt. Wenn Sie jedoch eine Weiterleitung an ein anderes Cmdlet ausführen Write-Output -NoEnumerate , empfängt das downstream-Cmdlet das Auflistungsobjekt, nicht die aufgezählten Elemente der Auflistung.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.
Eingaben
PSObject
Sie können Objekte an dieses Cmdlet weiterleiten.
Ausgaben
PSObject
Dieses Cmdlet gibt die Objekte zurück, die als Eingabe übermittelt werden.
Hinweise
PowerShell enthält die folgenden Aliase für Write-Output:
Alle Plattformen:
echo
Fenster:
write