Udostępnij za pośrednictwem


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

Breakpoint

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.

Breakpoint

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