Come utilizzare il parametro di errore di PowerShell

Come utilizzare il parametro di errore di PowerShell
Gli strumenti della riga di comando dipendono dall'utente in cui gli utenti scrivono comandi sulla console e quindi può verificarsi un errore umano. Di solito, se un comando fallisce in PowerShell, viene lanciato un errore in base al valore impostato ErroractionPreference. Tuttavia, Powerhell's Errore Il parametro consente di modificare l'azione se si verifica un errore. Il parametro di errore appartiene alla famiglia di operatori comuni di PowerShell e quindi supporta varie opzioni come Continua, SilentlyContinue, Ignora e molti altri. In questo post, il parametro di errore di PowerShell è descritto in dettaglio con alcune applicazioni pratiche sugli errori.

Come funziona il parametro di errore in PowerShell

Se si verifica un errore in PowerShell, entra in azione la preferenza di errori di PowerShell. Per impostazione predefinita, la preferenza ErroAction ha un valore Continua Ciò mostra un errore e continua l'ulteriore esecuzione. Per ciascun comando, il valore di ErroActionPreference viene sostituito dall'opzione utilizzata nel parametro di errore. L'errore può essere applicata con qualsiasi cmdlet/funzione nel modo seguente:

> -Errore

L'operazione di errore dipende principalmente dal specificato. Le seguenti opzioni sono supportate dal parametro di errore:

  • Continua: Questa opzione visualizza l'errore e continua l'esecuzione.
  • Ignorare: Come suggerisce il nome, continuerebbe l'esecuzione senza mostrare alcun errore.
  • Chiedere informazioni: Questa opzione chiede all'utente la conferma dell'azione da intraprendere.
  • SilentlyContinue: Questa opzione non segnala alcun errore e continuerà l'esecuzione.
  • Fermare: Questa azione interrompe l'esecuzione dopo aver riscontrato un errore.
  • Sospendere: Questa opzione si riferisce solo ai flussi di lavoro di PowerShell. Quando si verifica un errore, questa opzione consente di riprendere il lavoro in cui si è verificato l'errore.

Come utilizzare l'errore in PowerShell

Questa sezione mostra l'uso del parametro di errore in PowerShell:

Usando Continua con errore

Come accennato in precedenza, il Continua L'opzione è un valore predefinito della variabile ErrotationPreference e se viene passata con il parametro di errore, restituirebbe lo stesso errore. Abbiamo implementato i seguenti due comandi:

  1. Il primo comando viene eseguito senza il parametro di errore
  2. Lo stesso comando viene eseguito con l'opzione Continua del parametro di errore.

Inoltre, i comandi di cui sopra sono uniti con un cmdlet da scrittura per la migliore comprensione dell'opzione Continua in quanto continua l'esecuzione dopo aver lanciato un errore.

Entrambi i comandi restituiscono lo stesso output perché il valore predefinito della preferenza di errore è continua e quindi l'opzione Continua del parametro di errore non ha alcun effetto sulla variabile di preferenza ErroAction.

> CD D: \; Write-host "L'esecuzione è continuata!!"
> CD D: \ -erroraction Continua; Write-host "L'esecuzione è continuata!!"

Utilizzando l'informazione con errore

Come dirigono il nome dell'opzione, l'opzione di richiesta ti chiede cosa fare con il comando. Il comando scritto di seguito esegue l'opzione Informazione con il parametro di errore.

> cd d: \ -erroraction indaghed; Write-host "L'esecuzione è continuata!!"

Dobbiamo scegliere l'azione da quanto segue:

Premere Y per sì: questa azione ti procederà all'esecuzione del comando:

Premere A per sì a tutti: premere A per avere la stessa azione di sì.

Premere H per Halt Command: premendo H, il comando non verrà eseguito dopo un errore e quindi non esegue la parte di scrittura del comando.

Premere S per sospendere: la sospensione del comando non comporterà alcuna azione.

Usando l'opzione Ignora con errore

L'opzione Ignora dell'errore bypassa l'errore ed esegue l'altra parte del comando (se fornito). Ad esempio, il comando fornito di seguito implementa il “Ignorare"Opzione con Errore e l'output mostra che viene eseguita solo la parte di scrittura-host (perché è priva di errori).

> CD D: \ -erroraction Ignore; Write-host "L'esecuzione è continuata!!"

Utilizzo di SilentlyContinue con errore

L'opzione di silengentinetto salta l'errore e la parte senza errori del comando viene implementata. Nel comando indicato di seguito, il CMDLET di Write-Error viene utilizzato per generare un errore ed è esercitata con l'opzione silenziosamente di scatenamento del parametro di errore.

Si osserva che l'opzione Ignore e il silenzio del benessere generano lo stesso output. Ma SilentlyContinue segnala l'errore alla variabile ERRORE $ di PowerShell, mentre Ignore non aggiunge tale errore a $ ERROR.

> ERROR WRITE -ERROR "ERRORE NECCETTO" -ERRORAZIONE SILENCHENTE CONTINUA; Write-host "L'esecuzione è continuata!!"

Utilizzo di arresto con errore

L'opzione di arresto come suggerisce il nome interrompe il comando dall'esecuzione dopo aver riscontrato un errore. Il comando seguente mostra l'implementazione dell'opzione Stop con errore.

> ERROR WRITE -ERROR "ERRORE NECCETTO" -ERRORAZIONE STOP; Write-host "L'esecuzione è continuata!!"

Conclusione

Il parametro di errore PowerShell consente di gestire le azioni in caso di errore. Per impostazione predefinita, PowerShell opera sul Continua Opzione per la gestione degli errori. Tuttavia, l'operatore di errore può essere utilizzato per modificare l'opzione predefinita. Questo articolo spiega brevemente l'uso di errore con diverse opzioni supportate da questo parametro. Ogni opzione ha una procedura operativa diversa e il parametro di errore sostituisce l'opzione con impostazione predefinita (Continua) per ogni comando.