Get-PSBreakpoint

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

语法

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

说明

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

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

示例

示例 1:获取所有脚本和函数的所有断点

PS C:\> Get-PSBreakpoint

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

示例 2:按 ID 获取断点

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

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

示例 3:通过管道将 ID 传递给 Get-PSBreakpoint

PS C:\> $B = Set-PSBreakpoint -Script "sample.ps1" -Command "Increment"
PS C:\> $B.Id | Get-PSBreakpoint

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

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

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

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

示例 4:获取指定脚本文件中的断点

PS C:\> Get-PSBreakpoint -Script "Sample.ps1, SupportScript.ps1"

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

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

示例 5:获取指定 cmdlet 中的断点

PS C:\> Get-PSBreakpoint -Command "Read-Host, Write-Host" -Script "Sample.ps1"

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

示例 6:获取指定文件中的命令断点

PS C:\> Get-PSBreakpoint -Type Command -Script "Sample.ps1"

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

示例 7:按变量获取断点

PS C:\> Get-PSBreakpoint -Variable "Index, Swap"

此命令获取在当前会话中的$Index和$Swap变量上设置的断点。

示例 8:获取文件中的所有行断点和变量断点

PS C:\> Get-PSBreakpoint -Type Line, Variable -Script "Sample.ps1"

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

参数

-Command

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

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

-Id

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

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

-Script

指定包含断点的脚本数组。 输入一个或多个脚本文件的路径和名称。 如果省略路径,则默认位置为当前目录。

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

-Type

指定此 cmdlet 获取的断点类型的数组。 输入一个或多个类型。 此参数的可接受值为:

  • 折线图
  • 命令
  • 变量

还可以通过管道将断点类型传递给 Get-PSBreakPoint

Type:BreakpointType[]
Accepted values:Line, Variable, Command
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Variable

指定在指定变量名称上设置的变量断点数组。 输入不带美元符号的变量名称。

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

输入

System.Int32, Microsoft.PowerShell.Commands.BreakpointType

可以通过管道将断点 ID 和断点类型传递给 Get-PSBreakPoint

输出

Breakpoint

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

备注

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