Write-Output
Invia gli oggetti specificati al comando successivo nella pipeline. Se il comando è l'ultimo nella pipeline, gli oggetti vengono visualizzati nella console.
Sintassi
Write-Output
[-InputObject] <PSObject[]>
[-NoEnumerate]
[<CommonParameters>]
Descrizione
Il cmdlet Write-Output invia l'oggetto specificato alla pipeline al comando successivo. Se il comando è l'ultimo nella pipeline, l'oggetto viene visualizzato nella console.
Write-Output invia gli oggetti nella pipeline primaria, nota anche come "flusso di output" o "pipeline riuscita". Per inviare oggetti di errore nella pipeline di errore, usare Write-Error.
Questo cmdlet viene in genere usato negli script per visualizzare le stringhe e altri oggetti nella console.
Poiché tuttavia il comportamento predefinito prevede la visualizzazione degli oggetti alla fine di una pipeline, in genere non è necessario usare il cmdlet.
Ad esempio, Get-Process | Write-Output
equivale a Get-Process
.
Esempio
Esempio 1: Ottenere gli oggetti e scriverli nella console
PS C:\> $P = Get-Process
PS C:\> Write-Output $P
PS C:\> $P
Il primo comando ottiene i processi in esecuzione nel computer e li archivia nella variabile $P.
Il secondo e il terzo comando visualizzano gli oggetti processo in $P nella console.
Esempio 2: Passare l'output a un altro cmdlet
PS C:\> Write-Output "test output" | Get-Member
Questo comando invia la stringa "test output" al cmdlet Get-Member, che visualizza i membri della classe System.String , dimostrando che la stringa è stata passata lungo la pipeline.
Esempio 3: Eliminare l'enumerazione nell'output
PS C:\> Write-Output @(1,2,3) | measure
Count : 3
...
PS C:\> Write-Output @(1,2,3) -NoEnumerate | measure
Count : 1
Questo comando aggiunge il parametro NoEnumerate per considerare una raccolta o una matrice come un singolo oggetto tramite la pipeline.
Parametri
-InputObject
Specifica gli oggetti da inviare nella pipeline. Immettere una variabile che contiene gli oggetti oppure digitare un comando o un'espressione che ottiene gli oggetti.
Type: | PSObject[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoEnumerate
Per impostazione predefinita, il cmdlet Write-Output enumera sempre il relativo output. Il parametro NoEnumerate elimina il comportamento predefinito e impedisce a Write-Output di enumerare l'output. Il parametro NoEnumerate non ha alcun effetto sulle raccolte create eseguendo il wrapping dei comandi tra parentesi, perché le parentesi forzano l'enumerazione.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Input
È possibile inviare tramite pipe gli oggetti a Write-Output.
Output
Write-Output restituisce gli oggetti inviati come input.