Set-PSDebug
Hiermee schakelt u functies voor scriptopsporing in en uit, stelt u het traceringsniveau in en schakelt u de strikte modus in.
Syntaxis
Set-PSDebug
[-Trace <Int32>]
[-Step]
[-Strict]
[<CommonParameters>]
Set-PSDebug
[-Off]
[<CommonParameters>]
Description
De Set-PSDebug
cmdlet schakelt script foutopsporingsfuncties in en uit, stelt het traceringsniveau in en schakelt strikte modus in. Standaard zijn de Functies voor foutopsporing van PowerShell uitgeschakeld.
Wanneer de parameter Trace een waarde van 1
heeft, wordt elke regel van het script getraceerd terwijl deze wordt uitgevoerd. Wanneer de parameter een waarde van 2
heeft, worden variabeletoewijzingen, functie-aanroepen en scriptoproepen ook getraceerd. Als de parameter Stap is opgegeven, wordt u gevraagd voordat elke regel van het script wordt uitgevoerd.
Voorbeelden
Voorbeeld 1: Het traceringsniveau instellen
In dit voorbeeld wordt het traceringsniveau ingesteld op 2
en wordt vervolgens een script uitgevoerd waarin de getallen 1, 2 en 3 worden weergegeven.
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 = ''.
Voorbeeld 2: Stapstappen inschakelen
In dit voorbeeld wordt stapstap ingeschakeld en wordt vervolgens een script uitgevoerd waarin de getallen 1, 2 en 3 worden weergegeven.
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
Voorbeeld 3: Strikte modus gebruiken
In dit voorbeeld wordt PowerShell in de strikte modus geplaatst en wordt geprobeerd toegang te krijgen tot een variabele die geen toegewezen waarde heeft.
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
Voorbeeld 4: Foutopsporingsfuncties uitschakelen
In dit voorbeeld worden alle functies voor foutopsporing uitgeschakeld en wordt vervolgens een script uitgevoerd waarin de getallen 1, 2 en 3 worden weergegeven.
Set-PSDebug -Off; foreach ($i in 1..3) {$i}
1
2
3
Parameters
-Off
Hiermee schakelt u alle functies voor scriptopsporing uit.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Step
Hiermee schakelt u scriptstappen in. Voordat elke regel wordt uitgevoerd, vraagt PowerShell u om te stoppen, door te gaan of een nieuw interpreterniveau in te voeren om de status van het script te controleren.
Als u de parameter Stap opgeeft, wordt automatisch een traceringsniveau van 1
ingesteld.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Strict
Hiermee geeft u op dat variabelen een waarde moeten worden toegewezen voordat naar een script wordt verwezen. Als naar een variabele wordt verwezen voordat een waarde wordt toegewezen, retourneert PowerShell een uitzonderingsfout. Dit komt overeen met Set-StrictMode -Version 1
. Zie Set-StrictModevoor meer informatie.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Trace
Hiermee geeft u het traceringsniveau voor elke regel in een script. Elke regel wordt getraceerd terwijl deze wordt uitgevoerd.
De acceptabele waarden voor deze parameter zijn als volgt:
- 0: Scripttracering uitschakelen.
- 1: Scriptlijnen traceren terwijl ze worden uitgevoerd.
- 2: Scriptlijnen, variabele toewijzingen, functie-aanroepen en scripts traceren.
Type: | Int32 |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
None
U kunt geen pijplijninvoer voor deze cmdlet uitvoeren.
Uitvoerwaarden
None
Deze cmdlet retourneert geen uitvoer.