Partilhar 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 reativa 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 onde a execução para 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-PSBreakpointo .

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: Ativar 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: Ativar 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: Ativar um ponto de interrupção desativado

Este exemplo reativa 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 salvando 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 é 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. Usando o parâmetro Breakpoint , Enable-PSBreakpoint habilita os pontos de interrupção.

Este exemplo é equivalente à execução do Enable-PSBreakpoint -Id 3, 5.

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

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

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 a serem habilitados. Forneça uma variável contendo 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[]
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Confirm

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

Tipo:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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. Não é possível 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[]
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais: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
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Runspace

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

Esse parâmetro foi adicionado no PowerShell 7.2.

Tipo:Runspace
Aliases:RunspaceId
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-WhatIf

Apresenta o que aconteceria mediante a execução do cmdlet. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

Breakpoint

Você pode canalizar um objeto de ponto de interrupção para este 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.

Notas

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á esteja habilitado. Como tal, pode ativar todos os pontos de interrupção sem erros, mesmo quando apenas alguns estão desativados.

  • Os pontos de interrupção são habilitados quando você os cria usando o Set-PSBreakpoint cmdlet. Não é necessário ativar os pontos de interrupção recém-criados.