Disable-PSBreakpoint
Wyłącza punkty przerwania w bieżącej konsoli.
Składnia
Disable-PSBreakpoint
[-PassThru]
[-Breakpoint] <Breakpoint[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Disable-PSBreakpoint
[-PassThru]
[-Id] <Int32[]>
[-Runspace <Runspace>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Opis
Polecenie cmdlet Disable-PSBreakpoint
wyłącza punkty przerwania, co zapewnia, że nie zostaną one trafione po uruchomieniu skryptu. Można jej użyć do wyłączenia wszystkich punktów przerwania lub określić punkty przerwania, przesyłając obiekty punktu przerwania lub identyfikatory punktów przerwania.
Technicznie to polecenie cmdlet zmienia wartość właściwości Enabled obiektu punktu przerwania na False.
Aby ponownie włączyć punkt przerwania, użyj polecenia cmdlet Enable-PSBreakpoint
. Punkty przerwania są domyślnie włączone podczas ich tworzenia przy użyciu polecenia cmdlet Set-PSBreakpoint
.
Punkt przerwania to punkt w skrytecie, w którym wykonywanie zostaje tymczasowo zatrzymane, aby można było sprawdzić instrukcje w skry skrycie.
Disable-PSBreakpoint
jest jednym z kilku poleceń cmdlet przeznaczonych do debugowania skryptów programu PowerShell. Aby uzyskać więcej informacji na temat debugera programu PowerShell, zobacz about_Debuggers.
Przykłady
Przykład 1: Ustawianie punktu przerwania i wyłączanie go
Te polecenia wyłączają nowo utworzony punkt przerwania.
$B = Set-PSBreakpoint -Script "sample.ps1" -Variable "name"
$B | Disable-PSBreakpoint
Polecenie cmdlet Set-PSBreakpoint
tworzy punkt przerwania w zmiennej $Name
skryptu Sample.ps1
i zapisuje obiekt punktu przerwania w zmiennej $B
. Polecenie cmdlet Disable-PSBreakpoint
wyłącza nowy punkt przerwania. Używa operatora potoku (|
) do wysyłania obiektu punktu przerwania w $B
do polecenia cmdlet Disable-PSBreakpoint
.
W wyniku tego polecenia wartość właściwości Enabled obiektu punktu przerwania w $B
jest false.
Przykład 2. Wyłączanie punktu przerwania
To polecenie wyłącza punkt przerwania z identyfikatorem punktu przerwania 0.
Disable-PSBreakpoint -Id 0
Przykład 3. Tworzenie wyłączonego punktu przerwania
To polecenie tworzy nowy punkt przerwania, który jest wyłączony do momentu jej włączenia.
Disable-PSBreakpoint -Breakpoint ($B = Set-PSBreakpoint -Script "sample.ps1" -Line 5)
Używa on polecenia cmdlet Disable-PSBreakpoint
, aby wyłączyć punkt przerwania. Wartość parametru punktu przerwania jest poleceniem Set-PSBreakpoint
, które ustawia nowy punkt przerwania, generuje obiekt punktu przerwania i zapisuje obiekt w zmiennej $B
.
Parametry polecenia cmdlet, które przyjmują obiekty jako ich wartości, mogą akceptować zmienną zawierającą obiekt lub polecenie, które pobiera lub generuje obiekt. W takim przypadku, ponieważ Set-PSBreakpoint
generuje obiekt punktu przerwania, może służyć jako wartość parametru breakpoint.
Przykład 4. Wyłączanie wszystkich punktów przerwania w bieżącej konsoli
To polecenie wyłącza wszystkie punkty przerwania w bieżącej konsoli.
`Get-PSBreakpoint` | Disable-PSBreakpoint
Przykład 5. Wyłączanie punktu przerwania w przestrzeni uruchomieniowej
W tym przykładzie zadanie jest uruchamiane, a punkt przerwania jest ustawiony na przerwanie po uruchomieniu Set-PSBreakpoint
. Przestrzeń uruchomieniowa jest przechowywana w zmiennej i przekazywana do polecenia Get-PSBreakpoint
za pomocą parametru Runspace. Dane wyjściowe Get-PSBreakpoint
są przesyłane potokami, aby Disable-PSBreakpoint
wyłączyć punkt przerwania w przestrzeni uruchomieniowej.
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
Parametry
-Breakpoint
Określa punkty przerwania do wyłączenia. Wprowadź zmienną zawierającą obiekty punktu przerwania lub polecenie, które pobiera obiekty punktu przerwania, takie jak Get-PSBreakpoint
polecenia. Można również przekazać obiekty punktu przerwania do polecenia cmdlet Disable-PSBreakpoint
.
Typ: | Breakpoint[] |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Id
Wyłącza punkty przerwania z określonymi identyfikatorami punktów przerwania. Wprowadź identyfikatory lub zmienną zawierającą identyfikatory. Nie można potokować identyfikatorów do Disable-PSBreakpoint
.
Typ: | Int32[] |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-PassThru
Zwraca obiekt reprezentujący włączone punkty przerwania. Domyślnie to polecenie cmdlet nie generuje żadnych danych wyjściowych.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Runspace
Określa identyfikator obiektu Runspace, aby można było wchodzić w interakcje z punktami przerwania w określonej przestrzeni uruchomieniowej.
Ten parametr został dodany w programie PowerShell 7.2.
Typ: | Runspace |
Aliasy: | RunspaceId |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-WhatIf
Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Polecenie cmdlet nie jest uruchamiane.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Do tego polecenia cmdlet można przekazać obiekt punktu przerwania.
Dane wyjściowe
None
Domyślnie to polecenie cmdlet nie zwraca żadnych danych wyjściowych.
Jeśli używasz parametru PassThru, to polecenie cmdlet zwraca obiekt punktu przerwania reprezentujący wyłączony punkt przerwania.
Uwagi
Program PowerShell zawiera następujące aliasy dla Disable-PSBreakpoint
:
- Wszystkie platformy:
dbp