Set-PSDebug
Włącza i wyłącza funkcje debugowania skryptów, ustawia poziom śledzenia i przełącza tryb ścisły.
Składnia
on
Set-PSDebug
[-Trace <Int32>]
[-Step]
[-Strict]
[<CommonParameters>]
off
Set-PSDebug
[-Off]
[<CommonParameters>]
Opis
Polecenie cmdlet Set-PSDebug włącza i wyłącza funkcje debugowania skryptów, ustawia poziom śledzenia i przełącza tryb ścisły. Domyślnie funkcje debugowania programu PowerShell są wyłączone.
Gdy parametr Trace ma wartość 1, każdy wiersz skryptu jest śledzony podczas jego uruchamiania. Gdy parametr ma wartość 2, są również śledzone przypisania zmiennych, wywołania funkcji i wywołania skryptów. Jeśli określono parametr kroku
Przykłady
Przykład 1. Ustawianie poziomu śledzenia
Ten przykład ustawia poziom śledzenia na 2, a następnie uruchamia skrypt, który wyświetla liczby 1, 2 i 3.
Set-PSDebug -Trace 2; foreach ($i in 1..3) {$i}
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in >>>> 1..3) {$i}
DEBUG: ! SET $foreach = 'IEnumerator'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '1'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
1
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '2'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
2
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '3'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
3
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $foreach = ''.
Przykład 2. Włączanie kroków
W tym przykładzie włącza się krok po kroku, a następnie uruchamia skrypt, który wyświetla liczby 1, 2 i 3.
Set-PSDebug -Step; foreach ($i in 1..3) {$i}
Continue with this operation?
1+ Set-PSDebug -Step; foreach ($i in >>>> 1..3) {$i}
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): A
DEBUG: 1+ Set-PSDebug -Step; foreach ($i in >>>> 1..3) {$i}
1
2
3
Przykład 3. Używanie trybu ścisłego
W tym przykładzie program PowerShell jest w trybie ścisłym i próbuje uzyskać dostęp do zmiennej, która nie ma przypisanej wartości.
Set-PSDebug -Strict; $NewVar
The variable '$NewVar' cannot be retrieved because it has not been set.
At line:1 char:22
+ Set-PSDebug -Strict; $NewVar
Przykład 4. Wyłączanie funkcji debugowania
Ten przykład wyłącza wszystkie funkcje debugowania, a następnie uruchamia skrypt, który wyświetla liczby 1, 2 i 3.
Set-PSDebug -Off; foreach ($i in 1..3) {$i}
1
2
3
Parametry
-Off
Wyłącza wszystkie funkcje debugowania skryptu.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | False |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
off
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Step
Włącza przechodzenie skryptu. Przed uruchomieniem każdego wiersza program PowerShell wyświetli monit o zatrzymanie, kontynuowanie lub wprowadzenie nowego poziomu interpretera w celu sprawdzenia stanu skryptu.
Określenie parametru Krok automatycznie ustawia poziom śledzenia 1.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | False |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
on
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Strict
Określa, że zmienne muszą mieć przypisaną wartość przed odwołaniem do skryptu. Jeśli zmienna jest przywołyowana przed przypisaną wartością, program PowerShell zwraca błąd wyjątku. Jest to odpowiednik Set-StrictMode -Version 1. Aby uzyskać więcej informacji, zobacz Set-StrictMode.
Właściwości parametru
| Typ: | SwitchParameter |
| Domyślna wartość: | False |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
on
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Trace
Określa poziom śledzenia dla każdego wiersza w skrycie. Każdy wiersz jest śledzony podczas jego uruchamiania.
Dopuszczalne wartości tego parametru są następujące:
- 0: Wyłącz śledzenie skryptów.
- 1: Śledzenie wierszy skryptu podczas ich uruchamiania.
- 2: Śledzenie wierszy skryptów, przypisań zmiennych, wywołań funkcji i skryptów.
Właściwości parametru
| Typ: | Int32 |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
on
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
CommonParameters
To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.
Dane wejściowe
None
Nie można potoku wprowadzić danych wejściowych do tego polecenia cmdlet.
Dane wyjściowe
None
To polecenie cmdlet nie zwraca żadnych danych wyjściowych.