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


Get-PSBreakpoint

Возвращает точки останова, заданные в текущем сеансе.

Синтаксис

Get-PSBreakpoint
   [[-Script] <String[]>]
   [-Runspace <Runspace>]
   [<CommonParameters>]
Get-PSBreakpoint
   [[-Script] <String[]>]
   -Command <String[]>
   [-Runspace <Runspace>]
   [<CommonParameters>]
Get-PSBreakpoint
   [[-Script] <String[]>]
   -Variable <String[]>
   [-Runspace <Runspace>]
   [<CommonParameters>]
Get-PSBreakpoint
   [[-Script] <String[]>]
   [-Type] <BreakpointType[]>
   [-Runspace <Runspace>]
   [<CommonParameters>]
Get-PSBreakpoint
   [-Id] <Int32[]>
   [-Runspace <Runspace>]
   [<CommonParameters>]

Описание

Командлет Get-PSBreakPoint получает точки останова, заданные в текущем сеансе. Параметры командлета можно использовать для получения определенных точек останова.

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

Примеры

Пример 1. Получение всех точек останова для всех скриптов и функций

Эта команда получает все точки останова, заданные для всех скриптов и функций в текущем сеансе.

Get-PSBreakpoint

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

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

Get-PSBreakpoint -Id 2

Function         :
IncrementAction  :
Enabled          :
TrueHitCount     : 0
Id               : 2
Script           : C:\ps-test\sample.ps1
ScriptName       : C:\ps-test\sample.ps1

Пример 3. Передача идентификатора в Get-PSBreakpoint

Эти команды показывают, как получить точку останова путем передачи идентификатора точки останова в Get-PSBreakpoint.

$B = `Set-PSBreakpoint` -Script "sample.ps1" -Command "Increment"
$B.Id | Get-PSBreakpoint

Командлет Set-PSBreakpoint создает точку останова для функции добавочного увеличения в скрипте Sample.ps1 и сохраняет объект точки останова в переменной $B. Свойство Id объекта точки останова в переменной $B будет передано командлету Get-PSBreakpoint для отображения сведений о точке останова.

Пример 4. Получение точек останова в указанных файлах скриптов

Эта команда получает все точки останова в файлах Sample.ps1 и SupportScript.ps1.

Get-PSBreakpoint -Script "Sample.ps1, SupportScript.ps1"

Эта команда не получает другие точки останова, которые могут быть заданы в других сценариях или функциях в сеансе.

Пример 5. Получение точек останова в указанных командлетах

Эта команда получает все точки останова команд, заданные в командах Read-Host или Write-Host в файле Sample.ps1.

Get-PSBreakpoint -Command "Read-Host, Write-Host" -Script "Sample.ps1"

Пример 6. Получение точек останова команд в указанном файле

Get-PSBreakpoint -Type Command -Script "Sample.ps1"

Эта команда получает все точки останова команды в файле Sample.ps1.

Пример 7. Получение точек останова по переменной

Эта команда получает точки останова, заданные в переменных $Index и $Swap в текущем сеансе.

Get-PSBreakpoint -Variable "Index, Swap"

Пример 8. Получение всех точек останова строки и переменной в файле

Эта команда получает все точки останова строки и переменных в скрипте Sample.ps1.

Get-PSBreakpoint -Type Line, Variable -Script "Sample.ps1"

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

В этом примере задание запускается, а точка останова устанавливается для разрыва при запуске Set-PSBreakPoint. Пространство выполнения хранится в переменной и передается команде Get-PSBreakPoint с параметром Runspace. Затем можно проверить точку останова в переменной $breakpoint.

Start-Job -ScriptBlock {
    Set-PSBreakpoint -Command Start-Sleep
    Start-Sleep -Seconds 10
}

$runspace = Get-Runspace -Id 1

$breakpoint = Get-PSBreakPoint -Runspace $runspace

Параметры

-Command

Задает массив точек останова команд, заданных в указанных именах команд. Введите имена команд, например имя командлета или функции.

Тип:String[]
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Id

Указывает идентификаторы точек останова, которые получает этот командлет. Введите идентификаторы в разделенном запятыми списке. Можно также передать идентификаторы точек останова в Get-PSBreakpoint.

Тип:Int32[]
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Runspace

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

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

Тип:Runspace
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Script

Задает массив скриптов, содержащих точки останова. Введите путь (необязательно) и имена одного или нескольких файлов скриптов. Если опустить путь, расположение по умолчанию — текущий каталог.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Type

Указывает массив типов точек останова, которые получает этот командлет. Введите один или несколько типов. Допустимые значения для этого параметра:

  • Линия
  • Команда
  • Переменная

Можно также передать типы точек останова в Get-PSBreakPoint.

Тип:BreakpointType[]
Допустимые значения:Line, Variable, Command
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Variable

Указывает массив точек останова переменной, заданных в указанных именах переменных. Введите имена переменных без знаков доллара.

Тип:String[]
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

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

Int32

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

BreakpointType

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

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

CommandBreakpoint

LineBreakpoint

VariableBreakpoint

Breakpoint

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

Примечания

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

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