Condividi tramite


Disable-PSBreakpoint

Disabilita i punti di interruzione nella console corrente.

Sintassi

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

Descrizione

Il cmdlet Disable-PSBreakpoint disabilita i punti di interruzione, assicurando che non vengano raggiunti quando viene eseguito lo script. È possibile usarlo per disabilitare tutti i punti di interruzione oppure specificare punti di interruzione inviando oggetti punto di interruzione o ID punto di interruzione.

Tecnicamente, questo cmdlet modifica il valore della proprietà Enabled di un oggetto punto di interruzione su False. Per riabilitare un punto di interruzione, usare il cmdlet Enable-PSBreakpoint. I punti di interruzione vengono abilitati per impostazione predefinita quando vengono creati usando il cmdlet Set-PSBreakpoint.

Un punto di interruzione è un punto in uno script in cui l'esecuzione si arresta temporaneamente in modo da poter esaminare le istruzioni nello script. Disable-PSBreakpoint è uno dei diversi cmdlet progettati per il debug di script di PowerShell. Per altre informazioni sul debugger di PowerShell, vedere about_Debuggers.

Esempio

Esempio 1: Impostare un punto di interruzione e disabilitarlo

Questi comandi disabilitano un punto di interruzione appena creato.

$B = Set-PSBreakpoint -Script "sample.ps1" -Variable "name"
$B | Disable-PSBreakpoint

Il cmdlet Set-PSBreakpoint crea un punto di interruzione nella variabile $Name nello script Sample.ps1 e salva l'oggetto punto di interruzione nella variabile $B. Il cmdlet Disable-PSBreakpoint disabilita il nuovo punto di interruzione. Usa un operatore pipeline (|) per inviare l'oggetto punto di interruzione in $B al cmdlet Disable-PSBreakpoint.

Di conseguenza di questo comando, il valore della proprietà Enabled dell'oggetto punto di interruzione in $B è False.

Esempio 2: Disabilitare un punto di interruzione

Questo comando disabilita il punto di interruzione con ID punto di interruzione 0.

Disable-PSBreakpoint -Id 0

Esempio 3: Creare un punto di interruzione disabilitato

Questo comando crea un nuovo punto di interruzione disabilitato fino a quando non viene abilitato.

Disable-PSBreakpoint -Breakpoint ($B = Set-PSBreakpoint -Script "sample.ps1" -Line 5)

Usa il cmdlet Disable-PSBreakpoint per disabilitare il punto di interruzione. Il valore del parametro punto di interruzione è un comando Set-PSBreakpoint che imposta un nuovo punto di interruzione, genera un oggetto punto di interruzione e salva l'oggetto nella variabile $B.

I parametri del cmdlet che accettano oggetti come valori possono accettare una variabile che contiene l'oggetto o un comando che ottiene o genera l'oggetto. In questo caso, poiché Set-PSBreakpoint genera un oggetto punto di interruzione, può essere usato come valore del parametro punto di interruzione.

Esempio 4: Disabilitare tutti i punti di interruzione nella console corrente

Questo comando disabilita tutti i punti di interruzione nella console corrente.

`Get-PSBreakpoint` | Disable-PSBreakpoint

Esempio 5: Disabilitare un punto di interruzione in uno spazio di esecuzione

In questo esempio viene avviato un processo e viene impostato un punto di interruzione quando viene eseguito il Set-PSBreakPoint. Lo spazio di esecuzione viene archiviato in una variabile e passato al comando Get-PSBreakPoint con il parametro runspace. L'output di Get-PSBreakPoint viene inviato tramite pipe a Disable-PSBreakpoint per disabilitare il punto di interruzione nello spazio di esecuzione.

Start-Job -ScriptBlock {
    Set-PSBreakpoint -Command Start-Sleep
    Start-Sleep -Seconds 10
}

$runspace = Get-Runspace -Id 1

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

Parametri

-Breakpoint

Specifica i punti di interruzione da disabilitare. Immettere una variabile contenente oggetti punto di interruzione o un comando che ottiene oggetti punto di interruzione, ad esempio un comando Get-PSBreakpoint. È anche possibile inviare tramite pipe oggetti punto di interruzione al cmdlet Disable-PSBreakpoint.

Tipo:Breakpoint[]
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Tipo:SwitchParameter
Alias:cf
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Id

Disabilita i punti di interruzione con gli ID punto di interruzione specificati. Immettere gli ID o una variabile che contiene gli ID. Non è possibile inviare tramite pipe GLI ID a Disable-PSBreakpoint.

Tipo:Int32[]
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-PassThru

Restituisce un oggetto che rappresenta i punti di interruzione abilitati. Per impostazione predefinita, questo cmdlet non genera alcun output.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Runspace

Specifica l'ID di un oggetto Runspace in modo da poter interagire con i punti di interruzione nello spazio di esecuzione specificato.

Questo parametro è stato aggiunto in PowerShell 7.2.

Tipo:Runspace
Alias:RunspaceId
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-WhatIf

Mostra cosa accadrebbe se il cmdlet viene eseguito. Il cmdlet non viene eseguito.

Tipo:SwitchParameter
Alias:wi
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

Breakpoint

È possibile inviare tramite pipe un oggetto punto di interruzione a questo cmdlet.

Output

None

Per impostazione predefinita, questo cmdlet non restituisce alcun output.

Breakpoint

Quando si utilizza il parametro PassThru, questo cmdlet restituisce un oggetto punto di interruzione che rappresenta il punto di interruzione disabilitato.

Note

PowerShell include gli alias seguenti per Disable-PSBreakpoint:

  • Tutte le piattaforme:
    • dbp