Delen via


Write-Output

Hiermee worden de opgegeven objecten naar de pijplijn geschreven. Als Write-Output de laatste opdracht in de pijplijn is, worden de objecten weergegeven in de console.

Syntax

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

Description

Hiermee worden de opgegeven objecten naar de pijplijn geschreven. Als Write-Output de laatste opdracht in de pijplijn is, worden de objecten weergegeven in de console.

Write-Output verzendt objecten naar de primaire pijplijn, ook wel de 'uitvoerstroom' of de 'geslaagde pijplijn' genoemd. Gebruik Write-Errorom foutobjecten naar de foutpijplijn te verzenden.

Deze cmdlet wordt doorgaans gebruikt in scripts om tekenreeksen en andere objecten op de console weer te geven. Een van de ingebouwde aliassen voor Write-Output is en is echo vergelijkbaar met 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 exemplaren waar 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".

Inventariseert standaard Write-Output verzamelingsobjecten. Kan echter Write-Output ook worden gebruikt om verzamelingen door te geven aan de pijplijn 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 in $P de console weer.

$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, die de leden van de klasse System.String weergeeft, waarmee wordt aangegeven dat de tekenreeks is doorgegeven via de pijplijn.

Write-Output "test output" | Get-Member

Voorbeeld 3: Opsomming in uitvoer onderdrukken

Met deze opdracht wordt de parameter NoEnumerate toegevoegd om een verzameling of matrix als één object te behandelen via de pijplijn.

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 voor het verzenden van de pijplijn. 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
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NoEnumerate

Standaard inventariseert de cmdlet altijd de Write-Output uitvoer. De parameter NoEnumerate onderdrukt het standaardgedrag en voorkomt dat Write-Output uitvoer wordt opgesomd. De parameter NoEnumerate heeft geen effect als de opdracht tussen haakjes staat, omdat de haakjes opsomming afdwingen. De matrix wordt bijvoorbeeld (Write-Output 1,2,3) nog steeds opgesomd.

De parameter NoEnumerate is alleen nuttig binnen 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 doorsluist Write-Output -NoEnumerate naar een andere cmdlet, ontvangt de downstream-cmdlet het verzamelingsobject, niet de geïnventareerde items van de verzameling.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

PSObject

U kunt objecten doorsluisen naar Write-Output.

Uitvoerwaarden

PSObject

Write-Output retourneert de objecten die als invoer worden verzonden.