Partager via


Get-Error

Obtient et affiche les messages d’erreur les plus récents de la session active.

Syntaxe

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

Description

L’applet de commande Get-Error obtient un objet PSExtendedError qui représente les détails d’erreur actuels de la dernière erreur qui s’est produite dans la session.

Vous pouvez utiliser pour afficher un nombre spécifié d’erreurs qui se sont produites dans la session active à l’aide du paramètre le plus récent .

L’applet de commande Get-Error reçoit également des objets d’erreur d’une collection, tels que $Error, pour afficher plusieurs erreurs de la session active.

Exemples

Exemple 1 : Obtenir les détails d’erreur les plus récents

Dans cet exemple, Get-Error affiche les détails de l’erreur la plus récente qui s’est produite dans la session active.

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 :

Exemple 2 : Obtenir le nombre spécifié de messages d’erreur qui se sont produits dans la session active

Cet exemple montre comment utiliser Get-Error avec le paramètre le plus récent. Dans cet exemple, nouveau retourne les détails des 3 erreurs les plus récentes qui se sont produites dans cette session.

Get-Error -Newest 3

Exemple 3 : Envoyer une collection d’erreurs pour recevoir des messages détaillés

La variable automatique $Error contient un tableau d’objets d’erreur dans la session active. Le tableau d’objets peut être redirigé vers Get-Error pour recevoir des messages d’erreur détaillés.

Dans cet exemple, $Error est redirigé vers l’applet de commande Get-Error. le résultat est la liste des messages d’erreur détaillés, similaires au résultat de l’exemple 1.

$Error | Get-Error

Paramètres

-InputObject

Ce paramètre est utilisé pour l’entrée de pipeline.

Type:PSObject
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Newest

Spécifie le nombre d’erreurs à afficher qui se sont produites dans la session active.

Type:Int32
Alias:Last
Position:0
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

PSObject

Prend en charge l’entrée de n’importe quel PSObject, mais les résultats varient, sauf si un ErrorRecord ou objet Exception sont fournis.

Sorties

ErrorRecord

Sortie dans un objet PSExtendedError.

Notes

Get-Error accepte l’entrée de pipeline. Par exemple, $Error | Get-Error.