Condividi tramite


Write-Output

Scrive gli oggetti specificati nella pipeline. Se Write-Output è l'ultimo comando nella pipeline, gli oggetti vengono visualizzati nella console.

Sintassi

Default (Impostazione predefinita)

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

Descrizione

Scrive gli oggetti specificati nella pipeline. Se Write-Output è l'ultimo comando nella pipeline, gli oggetti vengono visualizzati nella console.

Write-Output Invia oggetti alla pipeline primaria, nota anche come "flusso di output" o "pipeline di successo". Per inviare oggetti errore alla pipeline degli errori, utilizzare Write-Error.

Questo cmdlet viene in genere usato negli script per visualizzare stringhe e altri oggetti nella console. Uno degli alias predefiniti per Write-Output è echo, ed è simile ad altre shell che utilizzano echo. Il comportamento predefinito consiste nel visualizzare l'output alla fine di una pipeline. In PowerShell in genere non è necessario usare il cmdlet nelle istanze in cui l'output viene visualizzato per impostazione predefinita. Ad esempio, Get-Process | Write-Output equivale a Get-Process. In alternativa, è possibile scrivere echo "Home directory: $HOME", "Home directory: $HOME".

Per impostazione predefinita, Write-Output esegue l'enumerazione tramite gli oggetti dell'insieme. Tuttavia, Write-Output può essere utilizzato anche per passare le raccolte lungo la pipeline come un singolo oggetto con il parametro NoEnumerate .

Esempio

Esempio 1: Ottenere oggetti e scriverli nella console

In questo esempio i risultati del cmdlet Get-Process vengono archiviati nella variabile $P. Il cmdlet Write-Output visualizza gli oggetti di processo in $P nella console.

$P = Get-Process
Write-Output $P

Esempio 2: Passare l'output a un altro cmdlet

Questo comando invia tramite pipe la stringa "test output" al cmdlet Get-Member, che visualizza i membri della classe System.String, dimostrando che la stringa è stata trasmessa attraverso la pipeline.

Write-Output "test output" | Get-Member

Esempio 3: Eliminare l'enumerazione nell'output

Questo comando aggiunge il parametro NoEnumerate per considerare una raccolta o una matrice come un singolo oggetto tramite la pipeline.

Write-Output 1,2,3 | Measure-Object
Count    : 3
...
Write-Output 1,2,3 -NoEnumerate | Measure-Object
Count    : 1
...

Parametri

-InputObject

Specifica gli oggetti da inviare lungo la pipeline. Immettere una variabile contenente gli oggetti oppure digitare un comando o un'espressione che ottiene gli oggetti .

Proprietà dei parametri

Tipo:

PSObject[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:0
Obbligatorio:True
Valore dalla pipeline:True
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-NoEnumerate

Per impostazione predefinita, il cmdlet Write-Output enumera sempre il relativo output. Il parametro NoEnumerate elimina il comportamento predefinito e impedisce Write-Output di enumerare l'output. Il parametro NoEnumerate non ha alcun effetto se il comando è racchiuso tra parentesi, perché le parentesi forzano l'enumerazione. Ad esempio, (Write-Output 1,2,3) enumera ancora la matrice.

Il parametro NoEnumerate è utile solo all'interno di una pipeline. Il tentativo di visualizzare gli effetti di NoEnumerate nella console è problematico perché PowerShell aggiunge Out-Default alla fine di ogni riga di comando, che comporta l'enumerazione. Tuttavia, se si invia tramite pipe Write-Output -NoEnumerate a un altro cmdlet, il cmdlet downstream riceve l'oggetto raccolta, non gli elementi enumerati dell'insieme.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

PSObject

È possibile inviare oggetti tramite pipe a Write-Output.

Output

PSObject

Write-Output Restituisce gli oggetti inviati come input.