Enable-PSBreakpoint

Habilita los puntos de interrupción en la consola actual.

Syntax

Enable-PSBreakpoint
      [-PassThru]
      [-Breakpoint] <Breakpoint[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Enable-PSBreakpoint
      [-PassThru]
      [-Id] <Int32[]>
      [-Runspace <Runspace>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

El Enable-PSBreakpoint cmdlet vuelve a habilitar los puntos de interrupción deshabilitados. Puede usarlo para habilitar todos los puntos de interrupción o puntos de interrupción específicos proporcionando objetos o identificadores de punto de interrupción.

Un punto de interrupción es un punto de un script donde la ejecución se detiene temporalmente para poder examinar el estado del script. Los puntos de interrupción recién creados se habilitan automáticamente, pero se pueden deshabilitar mediante Disable-PSBreakpoint.

Técnicamente, este cmdlet cambia el valor de la propiedad Enabled de un objeto de punto de interrupción a True.

Enable-PSBreakpoint es uno de los varios cmdlets diseñados para depurar scripts de PowerShell. Para obtener más información sobre el depurador de PowerShell, consulte about_Debuggers.

Ejemplos

Ejemplo 1: Habilitar todos los puntos de interrupción

En este ejemplo se habilitan todos los puntos de interrupción de la sesión actual.

Get-PSBreakpoint | Enable-PSBreakpoint

Con alias, este ejemplo se puede abreviar como gbp | ebp.

Ejemplo 2: Habilitar puntos de interrupción por identificador

En este ejemplo se habilitan varios puntos de interrupción mediante sus identificadores de punto de interrupción.

Enable-PSBreakpoint -Id 0, 1, 5

Ejemplo 3: Habilitar un punto de interrupción deshabilitado

En este ejemplo se vuelve a habilitar un punto de interrupción que se ha deshabilitado.

$B = Set-PSBreakpoint -Script "sample.ps1" -Variable Name -PassThru
$B | Enable-PSBreakpoint -PassThru

AccessMode : Write
Variable   : Name
Action     :
Enabled    : False
HitCount   : 0
Id         : 0
Script     : C:\ps-test\sample.ps1
ScriptName : C:\ps-test\sample.ps1

AccessMode : Write
Variable   : Name
Action     :
Enabled    : True
HitCount   : 0
Id         : 0
Script     : C:\ps-test\sample.ps1
ScriptName : C:\ps-test\sample.ps1

Set-PSBreakpoint crea un punto de interrupción en la variable Name del Sample.ps1 script guardando el objeto de punto de interrupción en la $B variable . El parámetro PassThru muestra el valor de la propiedad Enabled del punto de interrupción es False.

Enable-PSBreakpoint vuelva a habilitar el punto de interrupción. De nuevo, con el parámetro PassThru vemos que el valor de la propiedad Enabled es True.

Ejemplo 4: Habilitar puntos de interrupción mediante una variable

En este ejemplo se habilita un conjunto de puntos de interrupción mediante los objetos de punto de interrupción.

$B = Get-PSBreakpoint -Id 3, 5
Enable-PSBreakpoint -Breakpoint $B

Get-PSBreakpoint obtiene los puntos de interrupción y los guarda en la $B variable . Con el parámetro Punto de interrupción, Enable-PSBreakpoint habilita los puntos de interrupción.

Este ejemplo es equivalente a ejecutar Enable-PSBreakpoint -Id 3, 5.

Ejemplo 5: Habilitar un punto de interrupción en un espacio de ejecución

En este ejemplo, se inicia un trabajo con un punto de interrupción para interrumpir y, a continuación, se deshabilita. El espacio de ejecución se almacena en una variable y se pasa al comando Get-PSBreakPoint con el parámetro Runspace. La salida de se canaliza para Enable-PSBreakpoint habilitar el punto de Get-PSBreakPoint interrupción en el espacio de ejecución.

Start-Job -ScriptBlock {
    $bp = Set-PSBreakpoint -Command Start-Sleep
    Disable-PSBreakpoint $bp
    Start-Sleep -Seconds 10
}

$runspace = Get-Runspace -Id 1

Get-PSBreakPoint -Runspace $runspace | Enable-Breakpoint -Runspace $runspace

Parámetros

-Breakpoint

Especifica los puntos de interrupción que se van a habilitar. Proporcione una variable que contenga puntos de interrupción o un comando que obtenga objetos de punto de interrupción, como Get-PSBreakpoint. También puede canalizar objetos de punto de interrupción a Enable-PSBreakpoint.

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

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

Especifica los números de identificador de los puntos de interrupción que se van a habilitar. El valor predeterminado es todos los puntos de interrupción. Proporcione el identificador por número o en una variable. No se pueden canalizar números de identificador a Enable-PSBreakpoint. Para buscar el identificador de un punto de interrupción, use el Get-PSBreakpoint cmdlet .

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

-PassThru

Devuelve un objeto que representa el punto de interrupción que se está habilitando. De forma predeterminada, este cmdlet no genera ninguna salida.

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

-Runspace

Especifica el identificador de un objeto Runspace para que pueda interactuar con puntos de interrupción en el espacio de ejecución especificado.

Este parámetro se agregó en PowerShell 7.2.

Type:Runspace
Aliases:RunspaceId
Position:Named
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

Breakpoint

Puede canalizar un objeto de punto de interrupción a este cmdlet.

Salidas

None

De forma predeterminada, este cmdlet no devuelve ninguna salida.

Breakpoint

Cuando se usa el parámetro PassThru , este cmdlet devuelve un objeto de punto de interrupción que representa el punto de interrupción habilitado.

Notas

PowerShell incluye los siguientes alias para Enable-PSBreakpoint:

  • Todas las plataformas:

    • ebp
  • El Enable-PSBreakpoint cmdlet no genera un error si intenta habilitar un punto de interrupción que ya está habilitado. Como tal, se pueden habilitar todos los puntos de interrupción sin errores, incluso cuando solo haya deshabilitados unos pocos.

  • Los puntos de interrupción se habilitan al crearlos mediante el Set-PSBreakpoint cmdlet . No es necesario habilitar los puntos de interrupción recién creados.