Set-PSDebug
Be- és kikapcsolja a szkript hibakeresési funkcióit, beállítja a nyomkövetési szintet, és bekapcsolja a szigorú módot.
Syntax
Set-PSDebug
[-Trace <Int32>]
[-Step]
[-Strict]
[<CommonParameters>]
Set-PSDebug
[-Off]
[<CommonParameters>]
Description
A Set-PSDebug
parancsmag be- és kikapcsolja a szkript hibakeresési funkcióit, beállítja a nyomkövetési szintet, és bekapcsolja a szigorú módot. Alapértelmezés szerint a PowerShell hibakeresési funkciói ki vannak kapcsolva.
Ha a Nyomkövetés paraméter értéke 1
, a szkriptek minden sora le lesz követve a futtatás során. Ha a paraméter értéke 2
, változó-hozzárendelések, függvényhívások és szkripthívások is nyomon lesznek követve. Ha a Lépés paraméter meg van adva, a rendszer a szkript minden sora előtt kéri.
Példák
1. példa: A nyomkövetési szint beállítása
Ez a példa a nyomkövetési szintet a következőre 2
állítja, majd futtat egy szkriptet, amely megjeleníti az 1, 2 és 3 számokat.
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 = ''.
2. példa: A lépcsőzés bekapcsolása
Ez a példa bekapcsolja a lépcsőzést, majd futtat egy szkriptet, amely megjeleníti az 1, 2 és 3 számokat.
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
3. példa: Szigorú mód használata
Ez a példa szigorú módba helyezi a PowerShellt, és megpróbál hozzáférni egy olyan változóhoz, amely nem rendelkezik hozzárendelt értékkel.
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
4. példa: Hibakeresési funkciók kikapcsolása
Ez a példa kikapcsolja az összes hibakeresési funkciót, majd futtat egy szkriptet, amely megjeleníti az 1, 2 és 3 számokat.
Set-PSDebug -Off; foreach ($i in 1..3) {$i}
1
2
3
Paraméterek
-Off
Kikapcsolja az összes szkript hibakeresési funkcióját.
Típus: | SwitchParameter |
Position: | Named |
Alapértelmezett érték: | False |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Step
Bekapcsolja a szkriptlépést. Az egyes sorok futtatása előtt a PowerShell megkéri, hogy állítsa le, folytassa vagy adjon meg egy új értelmezőszintet a szkript állapotának vizsgálatához.
A Lépés paraméter megadása automatikusan beállítja a nyomkövetési 1
szintet.
Típus: | SwitchParameter |
Position: | Named |
Alapértelmezett érték: | False |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Strict
Azt adja meg, hogy a változókhoz értéket kell hozzárendelni, mielőtt egy szkriptben hivatkoznak rá. Ha egy változóra az érték hozzárendelése előtt hivatkozik, a PowerShell kivételhibát ad vissza. Ez egyenértékű a Set-StrictMode -Version 1
. További információ: Set-StrictMode.
Típus: | SwitchParameter |
Position: | Named |
Alapértelmezett érték: | False |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Trace
A szkript minden sorához megadja a nyomkövetési szintet. Az egyes sorok futás közben lesznek nyomon követve.
A paraméter elfogadható értékei a következők:
- 0: A szkriptkövetés kikapcsolása.
- 1: Szkriptsorok nyomkövetése futás közben.
- 2: Szkriptvonalak, változó-hozzárendelések, függvényhívások és szkriptek nyomon követése.
Típus: | Int32 |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
Bevitelek
None
Ehhez a parancsmaghoz nem lehet objektumokat csövezni.
Kimenetek
None
Ez a parancsmag nem ad vissza kimenetet.