Partilhar via


Get-Error

Obtém e exibe as mensagens de erro mais recentes da sessão atual.

Sintaxe

Newest (Predefinição)

Get-Error
    [[-Newest] <Int32>]
    [<CommonParameters>]

Error

Get-Error
    [-InputObject <PSObject>]
    [<CommonParameters>]

Description

O cmdlet Get-Error obtém um objeto PSExtendedError que representa os detalhes do erro atual, referentes ao ú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 Newest.

O cmdlet Get-Error 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 Newest. Neste exemplo, mais recente 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 variável automática $Error contém uma matriz de objetos de erro na sessão atual. A matriz de objetos pode ser canalizada para o Get-Error para receber as mensagens de erro detalhadas.

Neste exemplo, $Error é canalizado para o cmdlet Get-Error. 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.

Propriedades dos parâmetros

Tipo:PSObject
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

Error
Position:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Newest

Especifica o número de erros a serem exibidos que ocorreram na sessão atual.

Propriedades dos parâmetros

Tipo:Int32
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:Último

Conjuntos de parâmetros

Newest
Position:0
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

PSObject

Você pode canalizar qualquer PSObject para esse cmdlet, mas os resultados variam, a menos que um ErrorRecord ou objeto Exception seja fornecido.

Saídas

ErrorRecord

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 canalização. Por exemplo, $Error | Get-Error.