Skip to content

Get-PSBreakpoint

SYNOPSIS

Gets the breakpoints that are set in the current session.

SYNTAX

Line (Default)

Get-PSBreakpoint [-Script <String[]>] [-Runspace <Runspace>] [<CommonParameters>]

Variable

Get-PSBreakpoint [-Script <String[]>] -Variable <String[]> [-Runspace <Runspace>] [<CommonParameters>]

Command

Get-PSBreakpoint [-Script <String[]>] -Command <String[]> [-Runspace <Runspace>] [<CommonParameters>]

Type

Get-PSBreakpoint [-Script <String[]>] [-Type] <BreakpointType[]> [-Runspace <Runspace>] [<CommonParameters>]

Id

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

DESCRIPTION

The `Get-PSBreakPoint` cmdlet gets the breakpoints that are set in the current session. You can use the cmdlet parameters to get particular breakpoints.

A breakpoint is a point in a command or script where execution stops temporarily so that you can examine the instructions. `Get-PSBreakpoint` is one of several cmdlets designed for debugging PowerShell scripts and commands. For more information about the PowerShell debugger, see about_Debuggers (../microsoft.powershell.core/about/about_debuggers.md).

EXAMPLES

Example 1: Get all breakpoints for all scripts and functions

Get-PSBreakpoint

Example 2: Get breakpoints by ID

Get-PSBreakpoint -Id 2

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

Example 3: Pipe an ID to Get-PSBreakpoint

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

The `Set-PSBreakpoint` cmdlet creates a breakpoint on the Increment function in the `Sample.ps1` script and saves the breakpoint object in the `$B` variable. The Id property of the breakpoint object in the `$B` variable is piped to the `Get-PSBreakpoint` cmdlet to display the breakpoint information.

Example 4: Get breakpoints in specified script files

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

This command does not get other breakpoints that might be set in other scripts or on functions in the session.

Example 5: Get breakpoints in specified cmdlets

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

Example 6: Get Command breakpoints in a specified file

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

This command gets all Command breakpoints in the Sample.ps1 file.

Example 7: Get breakpoints by variable

Get-PSBreakpoint -Variable "Index, Swap"

Example 8: Get all Line and Variable breakpoints in a file

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

PARAMETERS

-Command

Specifies an array of command breakpoints that are set on the specified command names. Enter the command names, such as the name of a cmdlet or function.

Type: System.String[]
Parameter Sets: Command
Aliases:

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

-Id

Specifies the breakpoint IDs that this cmdlet gets. Enter the IDs in a comma-separated list. You can also pipe breakpoint IDs to `Get-PSBreakpoint`.

Type: System.Int32[]
Parameter Sets: Id
Aliases:

Required: True
Position: 0
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False

-Script

Specifies an array of scripts that contain the breakpoints. Enter the path (optional) and names of one or more script files. If you omit the path, the default location is the current directory.

Type: System.String[]
Parameter Sets: Line
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
Type: System.String[]
Parameter Sets: Variable, Command, Type
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False

-Type

Specifies an array of breakpoint types that this cmdlet gets. Enter one or more types. The acceptable values for this parameter are:

  • Line
  • Command
  • Variable

You can also pipe breakpoint types to `Get-PSBreakPoint`.

Type: Microsoft.PowerShell.Commands.BreakpointType[]
Parameter Sets: Type
Aliases:
Accepted values: Line, Variable, Command

Required: True
Position: 0
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False

-Variable

Specifies an array of variable breakpoints that are set on the specified variable names. Enter the variable names without dollar signs.

Type: System.String[]
Parameter Sets: Variable
Aliases:

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

-Runspace

{{ Fill Runspace Description }}

Type: System.Management.Automation.Runspaces.Runspace
Parameter Sets: (All)
Aliases:

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

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

INPUTS

System.Int32

Microsoft.PowerShell.Commands.BreakpointType

You can pipe breakpoint IDs and breakpoint types to `Get-PSBreakPoint`.

OUTPUTS

System.Management.Automation.CommandBreakpoint

System.Management.Automation.LineBreakpoint

System.Management.Automation.VariableBreakpoint

System.Management.Automation.Breakpoint

`Get-PSBreakPoint` returns objects that represent the breakpoints in the session.

NOTES

You can use `Get-PSBreakpoint` or its alias, "gbp".

Disable-PSBreakpoint

Enable-PSBreakpoint

Get-PSCallStack

Remove-PSBreakpoint

Set-PSBreakpoint

Back to top