Remove-PSBreakpoint
Deletes breakpoints from the current console.
Syntax
Remove-PSBreakpoint
[-Breakpoint] <Breakpoint[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-PSBreakpoint
[-Id] <Int32[]>
[-Runspace <Runspace>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Remove-PSBreakpoint
cmdlet deletes a breakpoint. Enter a breakpoint object or a breakpoint ID.
When you remove a breakpoint, the breakpoint object is no longer available or functional. If you have saved a breakpoint object in a variable, the reference still exists, but the breakpoint does not function.
Remove-PSBreakpoint
is one of several cmdlets designed for debugging PowerShell scripts. For more
information about the PowerShell debugger, see
about_Debuggers.
Examples
Example 1: Remove all breakpoints
This command deletes all of the breakpoints in the current console.
Get-PSBreakpoint | Remove-PSBreakpoint
Example 2: Remove a specified breakpoint
This command deletes a breakpoint.
$B = Set-PSBreakpoint -Script "sample.ps1" -Variable "Name"
$B | Remove-PSBreakpoint
The Set-PSBreakpoint
cmdlet creates a breakpoint on the $Name
variable in the Sample.ps1
script and saves the breakpoint object in the $B
variable. The Remove-PSBreakpoint
cmdlet
deletes the new breakpoint. It uses a pipeline operator (|
) to send the breakpoint object in the
$B
variable to the Remove-PSBreakpoint
cmdlet.
As a result of this command, if you run the script, it runs to completion without stopping. Also,
the Get-PSBreakpoint
cmdlet does not return this breakpoint.
Example 3: Remove a breakpoint by ID
This command deletes the breakpoint with breakpoint ID 2.
Remove-PSBreakpoint -Id 2
Example 4: Use a function to remove all breakpoints
This simple function deletes all the breakpoints in the current session.
function del-psb { Get-PSBreakpoint | Remove-PSBreakpoint }
It uses the Get-PSBreakpoint
cmdlet to get the breakpoints. Then, it uses a pipeline operator
(|
) to send the breakpoints to the Remove-PSBreakpoint
cmdlet, which deletes them.
Example 5: Remove a breakpoint in a runspace
In this example, a job is started and a breakpoint is set to break when the Set-PSBreakPoint
is
run. The runspace is stored in a variable and passed to the Get-PSBreakPoint
command with the
Runspace parameter. The output of Get-PSBreakPoint
is piped to Remove-PSBreakpoint
to
remove the breakpoint in the runspace.
Start-Job -ScriptBlock {
Set-PSBreakpoint -Command Start-Sleep
Start-Sleep -Seconds 10
}
$runspace = Get-Runspace -Id 1
Get-PSBreakPoint -Runspace $runspace | Remove-Breakpoint -Runspace $runspace
Parameters
-Breakpoint
Specifies the breakpoints to delete. Enter a variable that contains breakpoint objects or a command
that gets breakpoint objects, such as a Get-PSBreakpoint
command. You can also pipe breakpoint
objects to Remove-PSBreakpoint
.
Type: | Breakpoint[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Id
Specifies breakpoint IDs for which this cmdlet deletes breakpoints.
Type: | Int32[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Runspace
Specifies the Id of a Runspace object so you can interact with breakpoints in the specified runspace.
This parameter was added in PowerShell 7.2.
Type: | Runspace |
Aliases: | RunspaceId |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
You can pipe breakpoint objects to this cmdlet.
Int32[]
Outputs
None
This cmdlet returns no output.
Notes
PowerShell includes the following aliases for Remove-PSBreakpoint
:
- All platforms:
rbp