打开和关闭脚本调试功能,设置跟踪级别并切换 strict 模式。
语法
Set-PSDebug [-Off] [<CommonParameters>] Set-PSDebug [-Step] [-Strict] [-Trace <int>] [<CommonParameters>]
说明
Set-PSDebug cmdlet 打开和关闭脚本调试功能,设置跟踪级别,并切换 strict 模式。
当 Trace 参数设置为 1 时,将在执行脚本的每一行时对其进行跟踪。当该参数设置为 2 时,还将跟踪变量赋值、函数调用和脚本调用。如果指定了 Step 参数,则在执行脚本的每一行之前将会提示您。
参数
-Off
关闭所有脚本调试功能。
注意:“set-strictmode –off”命令禁用“set-psdebug –strict”命令设置的验证。有关详细信息,请参阅 Set-StrictMode。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
-Step
打开脚本步进。在运行每一行之前,系统会提示用户停止、继续或输入新的解释器级别以检查脚本的状态。
注意:指定 Step 参数会自动将跟踪级别设置为 1。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
-Strict
指定如果在为某个变量赋值之前引用了该变量,解释器应引发异常。
注意:“set-strictmode –off”命令禁用“set-psdebug –strict”命令设置的验证。有关详细信息,请参阅 Set-StrictMode。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
-Trace <int>
指定跟踪级别:
0 - 关闭脚本跟踪
1 - 执行脚本行时跟踪它们
2 - 跟踪脚本行、变量赋值、函数调用和脚本。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
<CommonParameters>
此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.
输入和输出
输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。
输入 |
None 不能通过管道将输入传递给此 cmdlet。 |
输出 |
None 此 cmdlet 不返回任何输出。 |
示例 1
C:\PS>set-psdebug -trace 2; foreach ($i in 1..3) {$i} DEBUG: 1+ Set-PsDebug -trace 2; foreach ($i in 1..3) {$i} 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} 2 DEBUG: 1+ Set-PsDebug -trace 2; foreach ($i in 1..3) {$i} 3 说明 ----------- 此命令将跟踪级别设置为 2,然后运行显示数字 1、2 和 3 的脚本。
示例 2
C:\PS>set-psdebug -step; foreach ($i in 1..3) {$i} DEBUG: 1+ 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 说明 ----------- 此命令打开步进,然后 运行显示数字 1、2 和 3 的脚本。
示例 3
C:\PS>set-psdebug -off; foreach ($i in 1..3) {$i} 1 2 3 说明 ----------- 此命令关闭所有调试功能,然后运行显示数字 1、2 和 3 的脚本。
示例 4
C:\PS>set-psdebug -strict; $NewVar The variable $NewVar cannot be retrieved because it has not been set yet. At line:1 char:28 + Set-PsDebug -strict;$NewVar <<<< 说明 ----------- 此命令将解释器置于 strict 模式,并尝试访问尚未设置的变量。
另请参阅