Get-PSBreakpoint

获取当前会话中设置的断点。

语法

Get-PSBreakpoint [[-Script] <string[]>] [<CommonParameters>]

Get-PSBreakpoint -Command <string[]> [-Script <string[]>] [<CommonParameters>]

Get-PSBreakpoint [-Id] <Int32[]> [<CommonParameters>]

Get-PSBreakpoint [-Type] <BreakpointType[]> [-Script <string[]>] [<CommonParameters>]

Get-PSBreakpoint -Variable <string[]> [-Script <string[]>] [<CommonParameters>]

说明

Get-PSBreakPoint cmdlet 获取当前会话中设置的断点。可以使用 cmdlet 参数来获取特定断点。

断点是命令或脚本中的一个点,可以在该处暂时停止执行,以便您可以检查指令。Get-PSBreakpoint 是设计用于调试 Windows PowerShell 脚本和命令的多个 cmdlet 之一。有关 Windows PowerShell 调试程序的详细信息,请参阅 about_Debuggers。

参数

-Command <string[]>

获取指定命令名称上设置的命令断点。输入命令名称,如 cmdlet 或函数的名称。

是否为必需?

true

位置?

named

默认值

所有断点

是否接受管道输入?

false

是否接受通配符?

false

-Id <Int32[]>

获取具有指定断点 ID 的断点。以逗号分隔的列表的形式输入 ID。还可以通过管道将断点 ID 传递给 Get-PSBreakpoint。

是否为必需?

true

位置?

1

默认值

所有断点

是否接受管道输入?

true (ByValue)

是否接受通配符?

false

-Script <string[]>

仅获取指定脚本中的断点。输入一个或多个脚本文件的路径(可选)和名称。默认位置为当前目录。

是否为必需?

false

位置?

named

默认值

所有断点

是否接受管道输入?

false

是否接受通配符?

false

-Type <BreakpointType[]>

仅获取指定类型的断点。输入一个或多个类型。有效值为 Line、Command 和 Variable。还可以通过管道将断点类型传递到 Get-PSBreakpoint。

是否为必需?

true

位置?

1

默认值

所有断点

是否接受管道输入?

true (ByValue)

是否接受通配符?

false

-Variable <string[]>

获取指定变量名称上设置的变量断点。输入变量名称,不带美元符号。

是否为必需?

true

位置?

named

默认值

所有断点

是否接受管道输入?

false

是否接受通配符?

false

<CommonParameters>

此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.

输入和输出

输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。

输入

System.Int32, Microsoft.PowerShell.Commands.BreakpointType

可以通过管道将断点 ID 和断点类型传递到 Get-PSBreakpoint。

输出

断点对象(System.Management.Automation.LineBreakpoint、System.Management.Automation.VariableBreakpoint、System.Management.Automation.CommandBreakpoint)

Get-PSBreakPoint 返回表示会话中的断点的对象。

说明

可以使用 Get-PSBreakpoint 或其别名“gbp”。

示例 1

C:\PS>get-psbreakpoint

说明
-----------
此命令获取在当前会话中的所有脚本和函数上设置的所有断点。





示例 2

C:\PS>get-psbreakpoint -Id 2

Function   : Increment
Action     :
Enabled    : True
HitCount   : 0
Id         : 2
Script     : C:\ps-test\sample.ps1
ScriptName : C:\ps-test\sample.ps1

说明
-----------
此命令获取断点 ID 为 2 的断点。





示例 3

C:\PS>$b = set-psbreakpoint -script sample.ps1 -function increment

C:\PS> $b.Id | get-psbreakpoint

说明
-----------
这些命令演示了如何通过管道将断点 ID 传递到 Get-PSBreakpoint 来获取断点。

第一个命令使用 Set-PSBreakpoint cmdlet 在 Sample.ps1 脚本中的 Increment 函数上创建一个断点。然后将断点对象保存在 $b 变量中。

第二个命令使用点运算符 (.)来获取 $b 变量中断点对象的 ID 属性。它使用管道运算符 (|) 将 ID 发送到 Get-PSBreakpoint cmdlet。

因此,Get-PSBreakpoint 可获取具有指定 ID 的断点。





示例 4

C:\PS>get-psbreakpoint -script Sample.ps1, SupportScript.ps1

说明
-----------
此命令获取 Sample.ps1 和 SupportScript.ps1 文件中的所有断点。

此命令不获取会话中的其他脚本或函数上可能设置的其他断点。





示例 5

C:\PS>get-psbreakpoint -command Read-Host, Write-Host -script Sample.ps1

说明
-----------
此命令获取 Sample.ps1 文件中的 Read-Host 或 Write-Host 命令上设置的所有 Command 断点。





示例 6

C:\PS>get-psbreakpoint -type Command -script Sample.ps1

说明
-----------
此命令获取 Sample.ps1 文件中的所有命令断点。





示例 7

C:\PS>get-psbreakpoint -variable Index, Swap

说明
-----------
此命令获取当前会话中的 $index 和 $swap 变量上设置的断点。





示例 8

C:\PS>get-psbreakpoint -type line, variable -script Sample.ps1

说明
-----------
此命令获取 Sample.ps1 脚本中的所有行断点和变量断点。





另请参阅

概念

about_Debuggers
Set-PSBreakpoint
Disable-PSBreakpoint
Enable-PSBreakpoint
Remove-PSBreakpoint
Get-PSCallStack