Get-Error
Ottiene e visualizza i messaggi di errore più recenti dalla sessione corrente.
Sintassi
Get-Error
[[-Newest] <Int32>]
[<CommonParameters>]
Get-Error
[-InputObject <PSObject>]
[<CommonParameters>]
Descrizione
Il Get-Error
cmdlet ottiene un oggetto PSExtendedError che rappresenta i dettagli dell'errore corrente dall'ultimo errore che si è verificato nella sessione.
È possibile utilizzare Get-Error
per visualizzare un numero specificato di errori che si sono verificati nella sessione corrente usando il parametro Più recente .
Il Get-Error
cmdlet riceve anche oggetti di errore da una raccolta, ad esempio $Error
, per visualizzare più errori dalla sessione corrente.
Esempio
Esempio 1: Ottenere i dettagli dell'errore più recenti
In questo esempio Get-Error
vengono visualizzati i dettagli dell'errore più recente che si è verificato nella sessione corrente.
Get-Childitem -path /NoRealDirectory
Get-Error
Get-ChildItem: Cannot find path 'C:\NoRealDirectory' because it does not exist.
Exception :
ErrorRecord :
Exception :
Message : Cannot find path 'C:\NoRealDirectory' because it does not exist.
HResult : -2146233087
TargetObject : C:\NoRealDirectory
CategoryInfo : ObjectNotFound: (C:\NoRealDirectory:String) [], ParentContainsErrorRecordException
FullyQualifiedErrorId : PathNotFound
ItemName : C:\NoRealDirectory
SessionStateCategory : Drive
TargetSite :
Name : GetChildItems
DeclaringType : System.Management.Automation.SessionStateInternal
MemberType : Method
Module : System.Management.Automation.dll
StackTrace :
at System.Management.Automation.SessionStateInternal.GetChildItems(String path, Boolean recurse, UInt32 depth,
CmdletProviderContext context)
at System.Management.Automation.ChildItemCmdletProviderIntrinsics.Get(String path, Boolean recurse, UInt32
depth, CmdletProviderContext context)
at Microsoft.PowerShell.Commands.GetChildItemCommand.ProcessRecord()
Message : Cannot find path 'C:\NoRealDirectory' because it does not exist.
Source : System.Management.Automation
HResult : -2146233087
TargetObject : C:\NoRealDirectory
CategoryInfo : ObjectNotFound: (C:\NoRealDirectory:String) [Get-ChildItem], ItemNotFoundException
FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
InvocationInfo :
MyCommand : Get-ChildItem
ScriptLineNumber : 1
OffsetInLine : 1
HistoryId : 57
Line : Get-Childitem -path c:\NoRealDirectory
PositionMessage : At line:1 char:1
+ Get-Childitem -path c:\NoRealDirectory
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
InvocationName : Get-Childitem
CommandOrigin : Internal
ScriptStackTrace : at <ScriptBlock>, <No file>: line 1
PipelineIterationInfo :
Esempio 2: Ottenere il numero specificato di messaggi di errore che si sono verificati nella sessione corrente
In questo esempio viene illustrato come usare Get-Error
con il parametro Newest . In questo esempio, Newest restituisce i dettagli dei 3 errori più recenti che si sono verificati in questa sessione.
Get-Error -Newest 3
Esempio 3: Inviare una raccolta di errori per ricevere messaggi dettagliati
La $Error
variabile automatica contiene una matrice di oggetti errore nella sessione corrente. La matrice di oggetti può essere inviata tramite pipe a Get-Error
per ricevere messaggi di errore dettagliati.
In questo esempio viene $Error
inviata tramite pipe al Get-Error
cmdlet . il risultato è un elenco di messaggi di errore dettagliati, simili al risultato dell'esempio 1.
$Error | Get-Error
Parametri
-InputObject
Questo parametro viene usato per l'input della pipeline.
Tipo: | PSObject |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-Newest
Specifica il numero di errori da visualizzare nella sessione corrente.
Tipo: | Int32 |
Alias: | Last |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
PSObject
È possibile inviare tramite pipe qualsiasi PSObject a questo cmdlet, ma i risultati variano a meno che non venga fornito un oggetto ErrorRecord o Exception .
Output
Questo cmdlet restituisce un oggetto PSExtendedError .
Note
PowerShell include gli alias seguenti per Get-Error
:
- Tutte le piattaforme:
gerr
Get-Error
accetta l'input della pipeline. Ad esempio: $Error | Get-Error
.