Write-Output
Hiermee schrijft u de opgegeven objecten naar de pijplijn.
Syntaxis
Write-Output
[-InputObject] <PSObject[]>
[-NoEnumerate]
[<CommonParameters>]
Description
Hiermee schrijft u de opgegeven objecten naar de pijplijn. Als Write-Output
dit de laatste opdracht in de pijplijn is, worden de objecten weergegeven in de console.
Write-Output
verzendt objecten naar de primaire pijplijn, ook wel bekend als de successtroom. Als u foutobjecten naar de foutstroom wilt verzenden, gebruikt u Write-Error
.
Deze cmdlet wordt meestal gebruikt in scripts om tekenreeksen en andere objecten op de console weer te geven. Een van de ingebouwde aliassen voor Write-Output
is echo
en lijkt op andere shells die gebruikmaken van echo
. Het standaardgedrag is om de uitvoer aan het einde van een pijplijn weer te geven. In PowerShell is het over het algemeen niet nodig om de cmdlet te gebruiken in gevallen waarin de uitvoer standaard wordt weergegeven. Get-Process | Write-Output
is bijvoorbeeld gelijk aan Get-Process
. Of, echo "Home directory: $HOME"
kan worden geschreven, "Home directory: $HOME"
.
Write-Output
Standaard worden objecten in een verzameling opgesomd. Write-Output
U kunt verzamelingen echter ook doorgeven als één object met de parameter NoEnumerate.
Voorbeelden
Voorbeeld 1: Objecten ophalen en naar de console schrijven
In dit voorbeeld worden de resultaten van de Get-Process
cmdlet opgeslagen in de $P
variabele. De Write-Output
cmdlet geeft de procesobjecten weer in $P
de console.
$P = Get-Process
Write-Output $P
Voorbeeld 2: Uitvoer doorgeven aan een andere cmdlet
Met deze opdracht wordt de tekenreeks 'testuitvoer' doorgegeven aan de Get-Member
cmdlet, waarin de leden van de klasse System.String worden weergegeven, waarmee wordt aangegeven dat de tekenreeks is doorgegeven aan de pijplijn.
Write-Output "test output" | Get-Member
Voorbeeld 3: Opsomming onderdrukken in uitvoer
Met deze opdracht wordt de parameter NoEnumerate toegevoegd om een verzameling of matrix als één object via de pijplijn te behandelen.
Write-Output 1,2,3 | Measure-Object
Count : 3
...
Write-Output 1,2,3 -NoEnumerate | Measure-Object
Count : 1
...
Parameters
-InputObject
Hiermee geeft u de objecten op die de pijplijn moeten worden verzonden. Voer een variabele in die de objecten bevat of typ een opdracht of expressie waarmee de objecten worden opgehaald.
Type: | PSObject[] |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-NoEnumerate
De cmdlet inventariseert standaard Write-Output
altijd de uitvoer. De parameter NoEnumerate onderdrukt het standaardgedrag en voorkomt Write-Output
dat uitvoer wordt opgesomd. De parameter NoEnumerate heeft geen effect als de opdracht tussen haakjes is verpakt, omdat de haakjes opsomming afdwingen. De matrix wordt bijvoorbeeld (Write-Output 1,2,3)
nog steeds opgesomd.
De parameter NoEnumerate is alleen nuttig in een pijplijn. Het is problematisch om de effecten van NoEnumerate in de console te zien, omdat PowerShell wordt toegevoegd Out-Default
aan het einde van elke opdrachtregel, wat resulteert in opsomming. Maar als u naar een andere cmdlet sluist Write-Output -NoEnumerate
, ontvangt de downstream-cmdlet het verzamelingsobject, niet de geïnventareerde items van de verzameling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt objecten doorsluisen naar deze cmdlet.
Uitvoerwaarden
Met deze cmdlet worden de objecten geretourneerd die als invoer worden verzonden.
Notities
PowerShell bevat de volgende aliassen voor Write-Output
:
Alle platformen:
echo
Windows:
write