Enable-PSBreakpoint

Включает точки останова в текущей консоли.

Синтаксис

Enable-PSBreakpoint
      [-PassThru]
      [-Breakpoint] <Breakpoint[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Enable-PSBreakpoint
      [-PassThru]
      [-Id] <Int32[]>
      [-Runspace <Runspace>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Описание

Командлет Enable-PSBreakpoint повторно включает отключенные точки останова. Его можно использовать для включения всех точек останова или определенных точек останова, предоставляя объекты или идентификаторы точек останова.

Точка останова — это точка в скрипте, где выполнение временно останавливается, чтобы можно было проверить состояние скрипта. Только что созданные точки останова включены автоматически, но их можно отключить с помощью Disable-PSBreakpoint.

Технически этот командлет изменяет значение свойства Enabled объекта точки останова на True.

Enable-PSBreakpoint — это один из нескольких командлетов, предназначенных для отладки скриптов PowerShell. Дополнительные сведения об отладчике PowerShell см. в about_Debuggers.

Примеры

Пример 1. Включение всех точек останова

Этот пример включает все точки останова в текущем сеансе.

Get-PSBreakpoint | Enable-PSBreakpoint

С помощью псевдонимов этот пример может быть сокращен как gbp | ebp.

Пример 2. Включение точек останова по идентификатору

В этом примере можно включить несколько точек останова с помощью идентификаторов точек останова.

Enable-PSBreakpoint -Id 0, 1, 5

Пример 3. Включение отключенной точки останова

Этот пример повторно включает точку останова, которая была отключена.

$B = Set-PSBreakpoint -Script "sample.ps1" -Variable Name -PassThru
$B | Enable-PSBreakpoint -PassThru

AccessMode : Write
Variable   : Name
Action     :
Enabled    : False
HitCount   : 0
Id         : 0
Script     : C:\ps-test\sample.ps1
ScriptName : C:\ps-test\sample.ps1

AccessMode : Write
Variable   : Name
Action     :
Enabled    : True
HitCount   : 0
Id         : 0
Script     : C:\ps-test\sample.ps1
ScriptName : C:\ps-test\sample.ps1

Set-PSBreakpoint создает точку останова для переменной Name в скрипте Sample.ps1 , сохраняя объект точки останова в переменной $B . Параметр PassThru отображает значение свойства Enabled точки останова false.

Enable-PSBreakpoint повторно включает точку останова. Опять же, используя параметр PassThru , мы видим, что значение свойства Enabled равно True.

Пример 4. Включение точек останова с помощью переменной

В этом примере включается набор точек останова с помощью объектов точек останова.

$B = Get-PSBreakpoint -Id 3, 5
Enable-PSBreakpoint -Breakpoint $B

Get-PSBreakpoint получает точки останова и сохраняет их в переменной $B . Использование параметра Enable-PSBreakpoint точки останова включает точки останова.

Этот пример эквивалентен выполнению Enable-PSBreakpoint -Id 3, 5.

Пример 5. Включение точки останова в пространстве выполнения

В этом примере задание запускается с точки останова, а затем отключено. Пространство выполнения хранится в переменной и передается команде Get-PSBreakPoint с параметром Runspace. Выходные данные Get-PSBreakPoint передаются для Enable-PSBreakpoint включения точки останова в пространстве выполнения.

Start-Job -ScriptBlock {
    $bp = Set-PSBreakpoint -Command Start-Sleep
    Disable-PSBreakpoint $bp
    Start-Sleep -Seconds 10
}

$runspace = Get-Runspace -Id 1

Get-PSBreakPoint -Runspace $runspace | Enable-Breakpoint -Runspace $runspace

Параметры

-Breakpoint

Задает точки останова для включения. Укажите переменную, содержащую точки останова или команду, которая получает объекты точек останова, например Get-PSBreakpoint. Объекты точки Enable-PSBreakpointостанова также можно передать в .

Type:Breakpoint[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

Указывает идентификаторы точек останова, которые необходимо включить. Значение по умолчанию — все точки останова. Укажите идентификатор по числу или в переменной. Не удается передать в нее номера идентификаторовEnable-PSBreakpoint. Чтобы найти идентификатор точки останова, используйте Get-PSBreakpoint командлет.

Type:Int32[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Возвращает объект, представляющий включенную точку останова. По умолчанию этот командлет не создает выходные данные.

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

-Runspace

Указывает идентификатор объекта Runspace , чтобы взаимодействовать с точками останова в указанном пространстве выполнения.

Этот параметр был добавлен в PowerShell 7.2.

Type:Runspace
Aliases:RunspaceId
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

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

Breakpoint

Объект точки останова можно передать в этот командлет.

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

None

По умолчанию этот командлет не возвращает выходные данные.

Breakpoint

При использовании параметра PassThru этот командлет возвращает объект точки останова, представляющий включенную точку останова.

Примечания

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

  • Для всех платформ.

    • ebp
  • Командлет Enable-PSBreakpoint не создает ошибку, если вы пытаетесь включить точку останова, которая уже включена. Таким образом, можно включить все точки останова, не опасаясь ошибок, даже если только некоторые из них отключены.

  • Точки останова включены при создании их с помощью командлета Set-PSBreakpoint . Вам не нужно включать только что созданные точки останова.