Get-Error
Obtém e exibe as mensagens de erro mais recentes da sessão atual.
Sintaxe
Get-Error
[[-Newest] <Int32>]
[<CommonParameters>]
Get-Error
[-InputObject <PSObject>]
[<CommonParameters>]
Description
O Get-Error
cmdlet obtém um objeto PSExtendedError que representa os detalhes do erro atual do último erro ocorrido na sessão.
Você pode usar Get-Error
para exibir um número especificado de erros que ocorreram na sessão atual usando o parâmetro Mais recente .
O Get-Error
cmdlet também recebe objetos de erro de uma coleção, como $Error
, para exibir vários erros da sessão atual.
Exemplos
Exemplo 1: Obter os detalhes de erro mais recentes
Neste exemplo, Get-Error
exibe os detalhes do erro mais recente que ocorreu na sessão atual.
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 :
Exemplo 2: Obter o número especificado de mensagens de erro que ocorreram na sessão atual
Este exemplo mostra como usar Get-Error
com o parâmetro Newer . Neste exemplo, Newest retorna os detalhes dos 3 erros mais recentes que ocorreram nesta sessão.
Get-Error -Newest 3
Exemplo 3: Enviar uma coleção de erros para receber mensagens detalhadas
A $Error
variável automática contém uma matriz de objetos de erro na sessão atual. A matriz de objetos pode ser canalizada para Get-Error
receber mensagens de erro detalhadas.
Neste exemplo, $Error
é canalizado para o Get-Error
cmdlet. o resultado é uma lista de mensagens de erro detalhadas, semelhante ao resultado do Exemplo 1.
$Error | Get-Error
Parâmetros
-InputObject
Este parâmetro é usado para entrada de pipeline.
Tipo: | PSObject |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-Newest
Especifica o número de erros a serem exibidos que ocorreram na sessão atual.
Tipo: | Int32 |
Aliases: | Last |
Position: | 0 |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Entradas
PSObject
Você pode canalizar qualquer PSObject para esse cmdlet, mas os resultados variam, a menos que um objeto ErrorRecord ou Exception seja fornecido.
Saídas
Este cmdlet retorna um objeto PSExtendedError .
Notas
O PowerShell inclui os seguintes aliases para Get-Error
:
- Todas as plataformas:
gerr
Get-Error
aceita entrada de pipeline. Por exemplo, $Error | Get-Error
.