Get-Error

Hämtar och visar de senaste felmeddelandena från den aktuella sessionen.

Syntax

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

Description

Cmdleten Get-Error hämtar ett PSExtendedError-objekt som representerar den aktuella felinformationen från det senaste felet som inträffade i sessionen.

Du kan använda Get-Error för att visa ett angivet antal fel som har inträffat i den aktuella sessionen med hjälp av parametern Newest .

Cmdleten Get-Error tar också emot felobjekt från en samling, till exempel $Error, för att visa flera fel från den aktuella sessionen.

Exempel

Exempel 1: Hämta den senaste felinformationen

I det här exemplet Get-Error visas information om det senaste felet som inträffade i den aktuella sessionen.

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 :

Exempel 2: Hämta det angivna antalet felmeddelanden som inträffade i den aktuella sessionen

Det här exemplet visar hur du använder Get-Error med parametern Newest . I det här exemplet returnerar Newest information om de tre senaste felen som inträffade i den här sessionen.

Get-Error -Newest 3

Exempel 3: Skicka en samling fel för att ta emot detaljerade meddelanden

Den $Error automatiska variabeln innehåller en matris med felobjekt i den aktuella sessionen. Matrisen med objekt kan skickas till för Get-Error att ta emot detaljerade felmeddelanden.

I det här exemplet $Error skickas till cmdleten Get-Error . resultatet är en lista över detaljerade felmeddelanden, ungefär som resultatet av exempel 1.

$Error | Get-Error

Parametrar

-InputObject

Den här parametern används för pipelineindata.

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Newest

Anger antalet fel som ska visas under den aktuella sessionen.

Type:Int32
Aliases:Last
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Indata

PSObject

Du kan skicka valfri PSObject till den här cmdleten, men resultatet varierar om inte antingen ett ErrorRecord - eller Exception-objekt har angetts.

Utdata

ErrorRecord

Den här cmdleten returnerar ett PSExtendedError-objekt .

Kommentarer

PowerShell innehåller följande alias för Get-Error:

  • Alla plattformar:
    • gerr

Get-Error accepterar pipelineindata. Exempel: $Error | Get-Error