Поделиться через


Get-Error

Возвращает и отображает последние сообщения об ошибках из текущего сеанса.

Синтаксис

Newest (по умолчанию)

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

Error

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

Описание

Командлет Get-Error получает объект PSExtendedError, представляющий детали последней ошибки, возникшей в сеансе.

Вы можете использовать Get-Error для отображения указанного количества ошибок, возникших в текущем сеансе, с помощью параметра Newest.

Командлет Get-Error также получает объекты ошибок из коллекции, например $Error, для отображения нескольких ошибок из текущего сеанса.

Примеры

Пример 1. Получение последних сведений об ошибке

В этом примере Get-Error отображаются сведения о последней ошибке, возникшую в текущем сеансе.

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 :

Пример 2. Получение указанного количества сообщений об ошибках, произошедших в текущем сеансе

В этом примере показано, как использовать Get-Error с параметром Newest. В этом примере Новейшие возвращает сведения о трёх новейших ошибках, возникших в этом сеансе.

Get-Error -Newest 3

Пример 3. Отправка коллекции ошибок для получения подробных сообщений

$Error автоматическая переменная содержит массив объектов ошибок в текущем сеансе. Массив объектов можно передать в Get-Error для получения подробных сообщений об ошибках.

В этом примере $Error передаются в командлет Get-Error. Результатом является список подробных сообщений об ошибках, аналогичных результату примера 1.

$Error | Get-Error

Параметры

-InputObject

Этот параметр используется для ввода данных в конвейер.

Свойства параметра

Тип:PSObject
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

Error
Position:Named
Обязательно:False
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Newest

Указывает количество ошибок, отображаемых в текущем сеансе.

Свойства параметра

Тип:Int32
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:Последний

Наборы параметров

Newest
Position:0
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Входные данные

PSObject

Вы можете перенаправить любой PSObject в этот командлет, но результаты могут различаться, если не будет предоставлен объект ErrorRecord или Exception.

Выходные данные

ErrorRecord

Этот командлет возвращает объект PSExtendedError.

Примечания

PowerShell включает следующие псевдонимы для Get-Error:

  • Все платформы:
    • gerr

Get-Error принимает входные данные конвейера. Например: $Error | Get-Error.