Set-PSDebug
Aktiverar och inaktiverar skriptfelsökningsfunktioner, ställer in spårningsnivån och växlar strikt läge.
Syntax
Set-PSDebug
[-Trace <Int32>]
[-Step]
[-Strict]
[<CommonParameters>]
Set-PSDebug
[-Off]
[<CommonParameters>]
Description
Cmdleten Set-PSDebug
aktiverar och inaktiverar skriptfelsökningsfunktioner, anger spårningsnivån och växlar strikt läge. Som standard är Funktionerna för PowerShell-felsökning inaktiverade.
När parametern Trace har värdet 1
spåras varje skriptrad när den körs. När parametern har värdet 2
spåras även variabeltilldelningar, funktionsanrop och skriptanrop. Om parametern Steg anges uppmanas du att göra det innan varje rad i skriptet körs.
Exempel
Exempel 1: Ange spårningsnivå
I det här exemplet anges spårningsnivån till 2
och kör sedan ett skript som visar siffrorna 1, 2 och 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 = ''.
Exempel 2: Aktivera stegning
Det här exemplet aktiverar stegsteg och kör sedan ett skript som visar siffrorna 1, 2 och 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
Exempel 3: Använd strikt läge
Det här exemplet försätter PowerShell i strikt läge och försöker komma åt en variabel som inte har ett tilldelat värde.
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
Exempel 4: Inaktivera felsökningsfunktioner
Det här exemplet inaktiverar alla felsökningsfunktioner och kör sedan ett skript som visar siffrorna 1, 2 och 3.
Set-PSDebug -Off; foreach ($i in 1..3) {$i}
1
2
3
Parametrar
-Off
Inaktiverar alla funktioner för felsökning av skript.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Step
Aktiverar skriptstegning. Innan varje rad körs uppmanar PowerShell dig att stoppa, fortsätta eller ange en ny tolknivå för att kontrollera tillståndet för skriptet.
Om du anger parametern Steg anges automatiskt en spårningsnivå på 1
.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Strict
Anger att variabler måste tilldelas ett värde innan de refereras i ett skript. Om en variabel refereras till innan ett värde tilldelas returnerar PowerShell ett undantagsfel. Detta motsvarar Set-StrictMode -Version 1
. Mer information finns i Set-StrictMode.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Trace
Anger spårningsnivån för varje rad i ett skript. Varje rad spåras när den körs.
Godkända värden för den här parametern är följande:
- 0: Inaktivera skriptspårning.
- 1: Spåra skriptrader när de körs.
- 2: Spåra skriptrader, variabeltilldelningar, funktionsanrop och skript.
Typ: | Int32 |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
None
Du kan inte skicka pipelineindata till den här cmdleten.
Utdata
None
Den här cmdleten returnerar inga utdata.