Informazioni su CommonParameters
DESCRIZIONE BREVE
Descrive i parametri che possono essere usati con qualsiasi cmdlet.
DESCRIZIONE LUNGA
I parametri comuni sono un set di parametri cmdlet che è possibile usare con qualsiasi cmdlet. Vengono implementati da PowerShell, non dallo sviluppatore di cmdlet e sono automaticamente disponibili per qualsiasi cmdlet.
È possibile usare i parametri comuni con qualsiasi cmdlet, ma potrebbero non avere alcun effetto su tutti i cmdlet. Ad esempio, se un cmdlet non genera alcun output dettagliato, l'uso del parametro comune Verbose non ha alcun effetto.
I parametri comuni sono disponibili anche in funzioni avanzate che usano l'attributo CmdletBinding o l'attributo Parameter e in tutti i flussi di lavoro.
Diversi parametri comuni sostituiscono le impostazioni predefinite o le preferenze di sistema impostate usando le variabili di preferenza di PowerShell. A differenza delle variabili di preferenza, i parametri comuni influiscono solo sui comandi in cui vengono usati.
Oltre ai parametri comuni, molti cmdlet offrono i parametri WhatIf e Confirm di mitigazione dei rischi. I cmdlet che comportano rischi per il sistema o per i dati utente in genere offrono questi parametri.
Nell'elenco seguente vengono visualizzati i parametri comuni. Gli alias sono elencati tra parentesi.
- Debug (db)
- ErrorAction (ea)
- ErrorVariable (ev)
- InformationAction (infa)
- InformationVariable (iv)
- OutVariable (ov)
- OutBuffer (ob)
- PipelineVariable (pv)
- Dettagliato (vb)
- WarningAction (wa)
- WarningVariable (wv)
I parametri di mitigazione dei rischi sono:
- WhatIf (wi)
- Conferma (cf)
Per altre informazioni, vedere about_Preference_Variables.
DESCRIZIONI DEI PARAMETRI COMUNI
Debug
L'alias per Debug è db.
Visualizza i dettagli a livello di programmatore sull'operazione eseguita dal comando . Questo parametro funziona solo quando il comando genera un messaggio di debug. Ad esempio, questo parametro funziona quando un comando contiene il Write-Debug
cmdlet .
Il parametro Debug esegue l'override del valore della $DebugPreference
variabile per il comando corrente, impostando il valore di $DebugPreference
su Continua. Poiché il valore predefinito della $DebugPreference
variabile è SilentlyContinue, il debug dei messaggi non viene visualizzato per impostazione predefinita.
-Debug:$true
ha lo stesso effetto di -Debug
. Usare -Debug:$false
per eliminare la visualizzazione dei messaggi di debug quando $DebugPreference
non è SilentlyContinue, ovvero l'impostazione predefinita.
ErrorAction
L'alias per ErrorAction è ea.
Determina il modo in cui il cmdlet risponde a un errore non irreversibile dal comando .
Questo parametro funziona solo quando il comando genera un errore non irreversibile, ad esempio quelli del Write-Error
cmdlet .
Il parametro ErrorAction esegue l'override del valore della $ErrorActionPreference
variabile per il comando corrente. Poiché il valore predefinito della $ErrorActionPreference
variabile è Continue, vengono visualizzati i messaggi di errore e l'esecuzione continua a meno che non si usi il parametro ErrorAction .
Il parametro ErrorAction non ha alcun effetto sugli errori irreversibili (ad esempio dati mancanti, parametri non validi o autorizzazioni insufficienti) che impediscono il completamento corretto di un comando.
-ErrorAction:Continue
visualizzare il messaggio di errore e continuare a eseguire il comando. Continue
è l'impostazione predefinita.
-ErrorAction:Ignore
elimina il messaggio di errore e continua l'esecuzione del comando. A differenza di SilentlyContinue, Ignore non aggiunge il messaggio di errore alla $Error
variabile automatica. Il valore Ignore viene introdotto in PowerShell 3.0.
-ErrorAction:Inquire
visualizza il messaggio di errore e chiede conferma prima di continuare l'esecuzione. Questo valore viene usato raramente.
-ErrorAction:SilentlyContinue
elimina il messaggio di errore e continua l'esecuzione del comando.
-ErrorAction:Stop
visualizza il messaggio di errore e interrompe l'esecuzione del comando.
-ErrorAction:Suspend
non è supportato in PowerShell Core perché è disponibile solo per i flussi di lavoro.
Nota
Il parametro ErrorAction esegue l'override, ma non sostituisce il valore della $ErrorAction
variabile di preferenza quando il parametro viene usato in un comando per eseguire uno script o una funzione.
ErrorVariable
L'alias per ErrorVariable è ev.
ErrorVariable archivia i messaggi di errore relativi al comando nella variabile specificata e nella $Error
variabile automatica. Per altre informazioni, digitare il comando seguente:
Get-Help about_Automatic_Variables
Per impostazione predefinita, i nuovi messaggi di errore sovrascrivono i messaggi di errore già archiviati nella variabile. Per aggiungere il messaggio di errore al contenuto della variabile, digitare un segno più (+
) prima del nome della variabile.
Ad esempio, il comando seguente crea la $a
variabile e quindi archivia eventuali errori in esso contenuti:
Get-Process -Id 6 -ErrorVariable a
Il comando seguente aggiunge eventuali messaggi di errore alla $a
variabile:
Get-Process -Id 2 -ErrorVariable +a
Il comando seguente visualizza il contenuto di $a
:
$a
È possibile usare questo parametro per creare una variabile contenente solo messaggi di errore da comandi specifici. La $Error
variabile automatica contiene messaggi di errore da tutti i comandi della sessione. È possibile usare la notazione di matrice, ad esempio $a[0]
o $error[1,2]
per fare riferimento a errori specifici archiviati nelle variabili.
InformationAction
L'alias per InformationAction è ia.
Introdotta in PowerShell 5.0. All'interno del comando o dello script in cui viene usato, il parametro comune InformationAction esegue l'override del valore della $InformationPreference
variabile preferenza, che per impostazione predefinita è impostato su SilentlyContinue. Quando si usa Write-Information
in uno script con InformationAction, Write-Information
i valori vengono visualizzati a seconda del valore del parametro InformationAction . Per altre informazioni su $InformationPreference
, vedere about_Preference_Variables.
-InformationAction:Stop
arresta un comando o uno script in corrispondenza di un'occorrenza del Write-Information
comando.
-InformationAction:Ignore
elimina il messaggio informativo e continua a eseguire il comando . A differenza di SilentlyContinue, ignora completamente il messaggio informativo; non aggiunge il messaggio informativo al flusso di informazioni.
-InformationAction:Inquire
visualizza il messaggio informativo specificato in un Write-Information
comando, quindi chiede se si desidera continuare.
-InformationAction:Continue
visualizza il messaggio informativo e continua l'esecuzione.
-InformationAction:Suspend
non è supportato in PowerShell Core perché è disponibile solo per i flussi di lavoro.
-InformationAction:SilentlyContinue
nessun effetto perché il messaggio informativo non viene visualizzato (impostazione predefinita) e lo script continua senza interruzioni.
Nota
Il parametro InformationAction esegue l'override, ma non sostituisce il valore della $InformationAction
variabile preferenza quando il parametro viene usato in un comando per eseguire uno script o una funzione.
InformazioniVariable
L'alias per InformationVariable è iv.
Introdotta in PowerShell 5.0. All'interno del comando o dello script in cui viene usato, il parametro comune InformationVariable archivia in una variabile una stringa specificata aggiungendo il Write-Information
comando . Write-Information
i valori vengono visualizzati a seconda del valore del parametro comune InformationAction ; se non si aggiunge il parametro comune InformationAction , Write-Information
le stringhe vengono visualizzate a seconda del valore della $InformationPreference
variabile di preferenza. Per altre informazioni su $InformationPreference
, vedere about_Preference_Variables.
OutBuffer
L'alias per OutBuffer è ob e accetta un valore System.Int32 .
Determina il numero di oggetti da accumulare in un buffer prima che gli oggetti vengano inviati tramite la pipeline. Se si omette questo parametro, gli oggetti vengono inviati man mano che vengono generati.
Questo parametro di gestione delle risorse è progettato per gli utenti avanzati. Quando si usa questo parametro, PowerShell invia i dati al cmdlet successivo in batch di OutBuffer + 1
.
Nell'esempio seguente vengono visualizzate alternative tra i blocchi di ForEach-Object
elaborazione che usano il Write-Host
cmdlet. Visualizzazione alternativa in batch di 2 o OutBuffer + 1
.
1..4 | ForEach-Object {
Write-Host "$($_): First"; $_
} -OutBuffer 1 | ForEach-Object {
Write-Host "$($_): Second" }
1: First
2: First
1: Second
2: Second
3: First
4: First
3: Second
4: Second
OutVariable
L'alias per OutVariable è ov.
Archivia gli oggetti di output dal comando nella variabile specificata oltre all'invio dell'output lungo la pipeline.
Per aggiungere l'output alla variabile, anziché sostituire qualsiasi output che potrebbe essere già archiviato, digitare un segno più (+
) prima del nome della variabile.
Ad esempio, il comando seguente crea la $out
variabile e archivia l'oggetto processo in esso:
Get-Process PowerShell -OutVariable out
Il comando seguente aggiunge l'oggetto $out
process alla variabile:
Get-Process iexplore -OutVariable +out
Il comando seguente visualizza il contenuto della $out
variabile:
$out
Nota
La variabile creata dal parametro OutVariable è un [System.Collections.ArrayList]
oggetto .
PipelineVariable
L'alias per PipelineVariable è pv e accetta un valore stringa .
PipelineVariable archivia il valore dell'elemento della pipeline corrente come variabile, per qualsiasi comando denominato che scorre attraverso la pipeline.
I valori validi sono stringhe, uguali a per qualsiasi nome di variabile.
Di seguito è riportato un esempio di funzionamento di PipelineVariable . In questo esempio il parametro PipelineVariable viene aggiunto a un Foreach-Object
comando per archiviare i risultati del comando nelle variabili. Un intervallo di numeri, da 1 a 10, viene eseguito il pipe nel primo Foreach-Object
comando, i risultati dei quali vengono archiviati in una variabile denominata Left.
I risultati del primo Foreach-Object
comando vengono inviati in pipe in un secondo Foreach-Object
comando, che filtra gli oggetti restituiti dal primo Foreach-Object
comando. I risultati del secondo comando vengono archiviati in una variabile denominata Right.
Nel terzo Foreach-Object
comando i risultati dei primi due Foreach-Object
comandi pipe, rappresentati dalle variabili Left e Right, vengono elaborati usando un operatore di moltiplicazione. Il comando indica agli oggetti archiviati nelle variabili a sinistra e destra di essere moltiplicate e specifica che i risultati devono essere visualizzati come "Membro intervallo sinistro * Membro intervallo destro = prodotto".
1..10 | Foreach-Object -PipelineVariable Left -Process { $_ } |
Foreach-Object -PV Right -Process { 1..10 } |
Foreach-Object -Process { "$Left * $Right = " + ($Left*$Right) }
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5
...
Dettagliato
L'alias per Verbose è vb.
Visualizza informazioni dettagliate sull'operazione eseguita dal comando. Queste informazioni sono simili alle informazioni contenute in una traccia o in un log delle transazioni. Questo parametro funziona solo quando il comando genera un messaggio dettagliato. Questo parametro, ad esempio, funziona quando un comando contiene il Write-Verbose
cmdlet.
Il parametro Verbose esegue l'override $VerbosePreference
del valore della variabile per il comando corrente. Poiché il valore predefinito della $VerbosePreference
variabile è SilentlyContinue, i messaggi dettagliati non vengono visualizzati per impostazione predefinita.
-Verbose:$true
ha lo stesso effetto di -Verbose
-Verbose:$false
elimina la visualizzazione dei messaggi dettagliati. Usare questo parametro quando il valore di $VerbosePreference
non è SilentlyContinue (impostazione predefinita).
WarningAction
L'alias per WarningAction è wa.
Determina il modo in cui il cmdlet risponde a un avviso dal comando. Continua è il valore predefinito. Questo parametro funziona solo quando il comando genera un messaggio di avviso. Questo parametro, ad esempio, funziona quando un comando contiene il Write-Warning
cmdlet.
Il parametro WarningAction esegue l'override $WarningPreference
del valore della variabile per il comando corrente. Poiché il valore predefinito della $WarningPreference
variabile è Continua, gli avvisi vengono visualizzati ed l'esecuzione continua a meno che non si usi il parametro WarningAction .
-WarningAction:Continue
visualizza i messaggi di avviso e continua a eseguire il comando. Continue
è l'impostazione predefinita.
-WarningAction:Inquire
visualizza il messaggio di avviso e richiede la conferma prima di continuare l'esecuzione. Questo valore viene usato raramente.
-WarningAction:SilentlyContinue
elimina il messaggio di avviso e continua a eseguire il comando.
-WarningAction:Stop
visualizza il messaggio di avviso e arresta l'esecuzione del comando.
Nota
Il parametro WarningAction esegue l'override $WarningAction
, ma non sostituisce il valore della variabile di preferenza quando il parametro viene usato in un comando per eseguire uno script o una funzione.
WarningVariable
L'alias per WarningVariable è wv.
Archivia avvisi sul comando nella variabile specificata.
Tutti gli avvisi generati vengono salvati nella variabile anche se gli avvisi non vengono visualizzati all'utente.
Per aggiungere gli avvisi al contenuto della variabile, anziché sostituire eventuali avvisi che potrebbero essere già archiviati, digitare un segno più (+
) prima del nome della variabile.
Ad esempio, il comando seguente crea la $a
variabile e quindi archivia eventuali avvisi in esso:
Get-Process -Id 6 -WarningVariable a
Il comando seguente aggiunge eventuali avvisi alla $a
variabile:
Get-Process -Id 2 -WarningVariable +a
Il comando seguente visualizza il contenuto di $a
:
$a
È possibile usare questo parametro per creare una variabile contenente solo avvisi da comandi specifici. È possibile usare la notazione matrice, ad esempio $a[0]
o $warning[1,2]
per fare riferimento a avvisi specifici archiviati nella variabile.
Nota
Il parametro WarningVariable non acquisisce avvisi da chiamate annidate in funzioni o script.
Descrizioni dei parametri di gestione dei rischi
WhatIf
Alias per WhatIf è wi.
Visualizza un messaggio che descrive l'effetto del comando, anziché eseguire il comando.
Il parametro WhatIf esegue l'override $WhatIfPreference
del valore della variabile per il comando corrente. Poiché il valore predefinito della $WhatIfPreference
variabile è 0 (disabilitato), il comportamento WhatIf non viene eseguito senza il parametro WhatIf . Per altre informazioni, digitare il comando seguente:
Get-Help about_Preference_Variables
-WhatIf:$true
ha lo stesso effetto di -WhatIf
.
-WhatIf:$false
elimina il comportamento di WhatIf automatico che genera quando il valore della $WhatIfPreference
variabile è 1.
Ad esempio, il comando seguente usa il -WhatIf
parametro in un Remove-Item
comando:
Remove-Item Date.csv -WhatIf
Anziché rimuovere l'elemento, PowerShell elenca le operazioni eseguite e gli elementi interessati. Questo comando produce l'output seguente:
What if: Performing operation "Remove File" on
Target "C:\ps-test\date.csv".
Confirm
L'alias per Confirm è cf.
Richiede la conferma dell'utente prima dell'esecuzione del comando.
Il parametro Confirm esegue l'override $ConfirmPreference
del valore della variabile per il comando corrente. Il valore predefinito è true. Per altre informazioni, digitare il comando seguente:
Get-Help about_Preference_Variables
-Confirm:$true
ha lo stesso effetto di -Confirm
.
-Confirm:$false
elimina la conferma automatica, che si verifica quando il valore di $ConfirmPreference
è minore o uguale al rischio stimato del cmdlet.
Ad esempio, il comando seguente usa il parametro Confirm con un Remove-Item
comando. Prima di rimuovere l'elemento, PowerShell elenca le operazioni eseguite e gli elementi interessati e chiede l'approvazione.
PS C:\ps-test> Remove-Item tmp*.txt -Confirm
Confirm
Are you sure you want to perform this action?
Performing operation "Remove File" on Target " C:\ps-test\tmp1.txt
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend
[?] Help (default is "Y"):
Le opzioni Conferma risposta sono le seguenti:
Risposta | Risultato |
---|---|
Sì (Y) | Eseguire l'azione. |
Sì a tutti (A) | Eseguire tutte le azioni e eliminare le query conferma successive |
per questo comando. | |
No (N): | Non eseguire l'azione. |
No to All (L): | Non eseguire alcuna azione e eliminare la conferma successiva |
query per questo comando. | |
Sospensione (S): | Sospendere il comando e creare una sessione temporanea. |
Guida (?) | Visualizzare la Guida per queste opzioni. |
L'opzione Sospensione inserisce il comando in attesa e crea una sessione nidificata temporanea in cui è possibile lavorare fino a quando non si è pronti per scegliere un'opzione Conferma . Il prompt dei comandi per la sessione nidificata ha due caret aggiuntive (>>) per indicare che è un'operazione figlio del comando padre originale. È possibile eseguire comandi e script nella sessione annidata. Per terminare la sessione annidata e tornare alle opzioni Conferma per il comando originale, digitare "exit".
Nell'esempio seguente viene usata l'opzione Suspend (S) per arrestare temporaneamente un comando mentre l'utente controlla la Guida per un parametro di comando. Dopo aver ottenuto le informazioni necessarie, l'utente digita "exit" per terminare il prompt annidato e quindi seleziona la risposta Sì (y) alla query Conferma.
PS C:\ps-test> New-Item -ItemType File -Name Test.txt -Confirm
Confirm
Are you sure you want to perform this action?
Performing operation "Create File" on Target "Destination:
C:\ps-test\test.txt".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default
is "Y"): s
PS C:\ps-test> Get-Help New-Item -Parameter ItemType
-ItemType <string>
Specifies the provider-specified type of the new item.
Required? false
Position? named
Default value
Accept pipeline input? true (ByPropertyName)
Accept wildcard characters? false
PS C:\ps-test> exit
Confirm
Are you sure you want to perform this action?
Performing operation "Create File" on Target "Destination: C:\ps-test\test
.txt".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (defau
lt is "Y"): y
Directory: C:\ps-test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 8/27/2010 2:41 PM 0 test.txt
PAROLE CHIAVI
about_Common_Parameters