Enable-PSBreakpoint
在目前主控台中啟用中斷點。
語法
Enable-PSBreakpoint [-Id] <Int32[]> [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
Enable-PSBreakpoint [-Breakpoint] <Breakpoint[]> [-PassThru] [-Confirm] [-WhatIf] [<CommonParameters>]
描述
Enable-PSBreakpoint Cmdlet 會重新啟用已停用的中斷點。您可以用它來啟用所有的中斷點,或是透過送出中斷點物件或中斷點識別碼來指定中斷點。
中斷點是指令碼中的一個位置,只要指令碼執行到此處就會暫停執行,讓您可以檢查指令碼中的指令。新建立的中斷點會自動處於啟用狀態,但是您可以使用 Disable-PSBreakpoint Cmdlet 加以停用。
嚴格來說,此 Cmdlet 會將中斷點物件的 Enabled 屬性值設為 True。
Enable-PSBreakpoint 是其中幾個專為偵錯 Windows PowerShell 指令碼所設計的 Cmdlet。如需 Windows PowerShell 偵錯工具的詳細資訊,請參閱 about_Debuggers。
參數
-Breakpoint <Breakpoint[]>
指定要啟用的中斷點。請輸入包含中斷點物件的變數或可取得中斷點物件的命令,例如 Get-PSBreakpoint 命令。您也可經由管道將中斷點物件輸出至 Enable-PSBreakpoint。
必要? |
true |
位置? |
1 |
預設值 |
無。 |
接受管線輸入? |
true (ByValue) |
接受萬用字元? |
false |
-Id <Int32[]>
啟用有指定的中斷點識別碼的中斷點。預設值為所有中斷點。請輸入識別碼或含有識別碼的變數 (您無法經由管道將識別碼輸出至 Enable-PSBreakpoint)。若要尋找中斷點的識別碼,請使用 Get-PSBreakpoint Cmdlet。
必要? |
true |
位置? |
1 |
預設值 |
無 |
接受管線輸入? |
true (ByPropertyName) |
接受萬用字元? |
false |
-PassThru
傳回代表已啟用之中斷點的物件。根據預設,此 Cmdlet 不會產生任何輸出。
必要? |
false |
位置? |
named |
預設值 |
沒有輸出 |
接受管線輸入? |
false |
接受萬用字元? |
false |
-Confirm
在執行命令前先提示確認。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-WhatIf
說明執行命令時將會發生何種情況,但不會實際執行命令。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
<CommonParameters>
這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.
輸入和輸出
輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。
輸入 |
System.Management.Automation.Breakpoint 您可經由管道將中斷點物件輸出至 Enable-PSBreakpoint。 |
輸出 |
無或 System.Management.Automation.Breakpoint 當您使用 PassThru 參數時,Enable-PSBreakpoint 會傳回代表已啟用之中斷點的中斷點物件。否則,這個 Cmdlet 不會產生任何輸出。 |
附註
如果您嘗試啟用已經啟用的中斷點,Enable-PSBreakpoint Cmdlet 並不會產生任何錯誤。就這一點來說,即使當只有一些中斷點處於停用狀態的時候,您也可以啟用所有中斷點而不會有錯誤產生。
在使用 Set-PSBreakpoint Cmdlet 建立中斷點時會啟用中斷點,您不需要啟用新建立的中斷點。
範例 1
C:\PS>get-psbreakpoint | enable-psbreakpoint
描述
-----------
這個命令會在目前主控台中啟用所有中斷點。您可以將這個命令縮短為 "gbp | ebp"。
範例 2
C:\PS>enable-psbreakpoint -id 0, 1, 5
描述
-----------
這個命令會啟用中斷點識別碼為 0、1 和 5 的中斷點。
範例 3
C:\PS>$b = set-psbreakpoint -script sample.ps1 -variable Name
C:\PS> $b | disable-psbreakpoint -passthru
AccessMode : Write
Variable : Name
Action :
Enabled : False
HitCount : 0
Id : 0
Script : C:\ps-test\sample.ps1
ScriptName : C:\ps-test\sample.ps1
C:\PS> $b | enable-psbreakpoint -passthru
AccessMode : Write
Variable : Name
Action :
Enabled : True
HitCount : 0
Id : 0
Script : C:\ps-test\sample.ps1
ScriptName : C:\ps-test\sample.ps1
描述
-----------
這些命令會重新啟用已經停用的中斷點。
第一個命令會使用 Set-PSBreakpoint Cmdlet 在 Sample.ps1 指令碼的 "Name" 變數上建立中斷點,然後將中斷點物件儲存到 $b 變數。
第二個命令會使用 Disable-PSBreakpoint Cmdlet 停用新的中斷點。它會使用管線運算子 (|) 將 $b 中的中斷點物件傳送給 Disable-PSBreakpoint Cmdlet,並使用 Disable-PSBreakpoint 的 PassThru 參數顯示已停用的中斷點物件。您可藉此確認中斷點物件的 Enabled 屬性值為 False。
第三個命令會使用 Enable-PSBreakpoint Cmdlet 重新啟用中斷點。它會使用管線運算子 (|) 將 $b 中的中斷點物件傳送給 Enable-PSBreakpoint Cmdlet,並使用 Enable-PSBreakpoint 的 PassThru 參數顯示中斷點物件。您可藉此確認中斷點物件的 Enabled 屬性值為 True。
下列範例的輸出會顯示結果。
範例 4
C:\PS>$b = get-psbreakpoint -id 3, 5
C:\PS> enable-psbreakpoint -breakpoint $b
描述
-----------
這些命令會藉由指定一組中斷點的中斷點物件來啟用這一組中斷點。
第一個命令會使用 Get-PSBreakpoint Cmdlet 取得中斷點,然後這些中斷點儲存到 $b 變數。
第二個命令會將 Enable-PSBreakpoint Cmdlet 搭配其 Breakpoint 參數使用,以啟用中斷點。
此命令相當於 "enable-psbreakpoint -id 3, 5"。
請參閱
概念
about_Debuggers
Set-PSBreakpoint
Disable-PSBreakpoint
Get-PSBreakpoint
Remove-PSBreakpoint
Get-PSCallStack