Compartilhar via


Enable-PSBreakpoint

Habilita os pontos de interrupção no console atual.

Sintaxe

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

Description

O Enable-PSBreakpoint cmdlet habilita novamente os pontos de interrupção desabilitados. Você pode usá-lo para habilitar todos os pontos de interrupção ou pontos de interrupção específicos, fornecendo objetos ou IDs de ponto de interrupção.

Um ponto de interrupção é um ponto em um script em que a execução é interrompida temporariamente para que você possa examinar o estado do script. Os pontos de interrupção recém-criados são ativados automaticamente, mas podem ser desativados usando Disable-PSBreakpoint.

Tecnicamente, esse cmdlet altera o valor da propriedade Enabled de um objeto de ponto de interrupção para True.

Enable-PSBreakpoint é um dos vários cmdlets projetados para depurar scripts do PowerShell. Para obter mais informações sobre o depurador do PowerShell, consulte about_Debuggers.

Exemplos

Exemplo 1: Habilitar todos os pontos de interrupção

Este exemplo habilita todos os pontos de interrupção na sessão atual.

Get-PSBreakpoint | Enable-PSBreakpoint

Usando aliases, este exemplo pode ser abreviado como gbp | ebp.

Exemplo 2: Habilitar pontos de interrupção por ID

Este exemplo habilita vários pontos de interrupção usando suas IDs de ponto de interrupção.

Enable-PSBreakpoint -Id 0, 1, 5

Exemplo 3: Habilitar um ponto de interrupção desabilitado

Este exemplo reabilita um ponto de interrupção que foi desabilitado.

$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 cria um ponto de interrupção na variável Name no Sample.ps1 script que salva o objeto de ponto de interrupção na $B variável. O parâmetro PassThru exibe o valor da propriedade Enabled do ponto de interrupção como False.

Enable-PSBreakpoint reativa o ponto de interrupção. Novamente, usando o parâmetro PassThru , vemos que o valor da propriedade Enabled é True.

Exemplo 4: habilitar pontos de interrupção usando uma variável

Este exemplo habilita um conjunto de pontos de interrupção usando os objetos de ponto de interrupção.

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

Get-PSBreakpoint obtém os pontos de interrupção e os salva na $B variável. O uso do parâmetro Enable-PSBreakpoint Ponto de Interrupção habilita os pontos de interrupção.

Este exemplo é equivalente a executar Enable-PSBreakpoint -Id 3, 5.

Exemplo 5: Habilitar um ponto de interrupção em um runspace

Neste exemplo, um trabalho é iniciado com um ponto de interrupção definido como break e desabilitado. O runspace é armazenado em uma variável e transmitido para o comando Get-PSBreakPoint com o parâmetro Runspace. A saída de Get-PSBreakPoint é canalizada para Enable-PSBreakpoint habilitar o ponto de interrupção no runspace.

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 os pontos de interrupção para habilitar. Forneça uma variável que contenha pontos de interrupção ou um comando que obtenha objetos de ponto de interrupção, como Get-PSBreakpoint. Você também pode canalizar objetos de ponto de interrupção para Enable-PSBreakpoint.

Tipo:Breakpoint[]
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Id

Especifica os números de ID dos pontos de interrupção a serem habilitados. O valor padrão é todos os pontos de interrupção. Forneça o Id por número ou em uma variável. Você não pode canalizar números de ID para Enable-PSBreakpoint. Para localizar a ID de um ponto de interrupção, use o Get-PSBreakpoint cmdlet.

Tipo:Int32[]
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-PassThru

Retorna um objeto que representa o ponto de interrupção que está sendo habilitado. Por padrão, esse cmdlet não gera nenhuma saída.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Runspace

Especifica a ID de um objeto de Runspace para que você possa interagir com pontos de interrupção no runspace especificado.

Esse parâmetro foi adicionado no PowerShell 7.2.

Tipo:Runspace
Aliases:RunspaceId
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

Breakpoint

Você pode canalizar um objeto de ponto de interrupção para esse cmdlet.

Saídas

None

Por padrão, esse cmdlet não retorna nenhuma saída.

Breakpoint

Quando você usa o parâmetro PassThru , esse cmdlet retorna um objeto de ponto de interrupção que representa o ponto de interrupção habilitado.

Observações

O PowerShell inclui os seguintes aliases para Enable-PSBreakpoint:

  • Todas as plataformas:

    • ebp
  • O Enable-PSBreakpoint cmdlet não gerará um erro se você tentar habilitar um ponto de interrupção que já está habilitado. Dessa forma, você pode habilitar todos os pontos de interrupção sem erro, mesmo quando apenas alguns estão desabilitados.

  • Os pontos de interrupção são habilitados quando você os cria usando o Set-PSBreakpoint cmdlet. Você não precisa habilitar pontos de interrupção recém-criados.