Enable-PSBreakpoint
啟用目前控制台中的斷點。
語法
Breakpoint (預設值)
Enable-PSBreakpoint
[-Breakpoint] <Breakpoint[]>
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Id
Enable-PSBreakpoint
[-Id] <Int32[]>
[-PassThru]
[-Runspace <Runspace>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Enable-PSBreakpoint Cmdlet 會重新啟用已停用的斷點。 您可以使用它來啟用所有斷點,或藉由提供斷點對象或標識碼來啟用特定斷點。
斷點是腳本中的一個點,執行會暫時停止,讓您可以檢查腳本的狀態。 新建立的斷點會自動啟用,但可以透過 Disable-PSBreakpoint將其停用。
從技術上看,此 Cmdlet 會將斷點物件的
Enable-PSBreakpoint 是數個專為偵錯 PowerShell 腳本而設計的 Cmdlet 之一。 如需 PowerShell 調試程式的詳細資訊,請參閱 about_Debuggers。
範例
範例 1:啟用所有斷點
這個示例會啟用目前會話中的所有斷點。
Get-PSBreakpoint | Enable-PSBreakpoint
使用別名時,此範例可以縮寫為 gbp | ebp。
範例 2:依 ID 啟動斷點
此範例會使用斷點識別碼來啟用多個斷點。
Enable-PSBreakpoint -Id 0, 1, 5
範例 3:啟用已停用的斷點
此範例會重新啟用已停用的斷點。
$B = Set-PSBreakpoint -Script "sample.ps1" -Variable Name -PassThru
$B | Enable-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
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 會在 腳本的 Sample.ps1 變數上建立斷點,並將斷點物件儲存在 $B 變數中。
PassThru 參數會顯示斷點的 Enabled 屬性值是 False。
Enable-PSBreakpoint 重新啟用斷點。 同樣地,使用 PassThru 參數,我們看到 Enabled 屬性的值是 True。
範例 4:使用變數啟用斷點
這個範例會透過斷點物件來啟用一組斷點。
$B = Get-PSBreakpoint -Id 3, 5
Enable-PSBreakpoint -Breakpoint $B
Get-PSBreakpoint 取得斷點,並將其儲存在 $B 變數中。 使用 斷點的參數,Enable-PSBreakpoint 啟用這些斷點。
這個範例相當於執行 Enable-PSBreakpoint -Id 3, 5。
範例 5:在 Runspace 中啟用斷點
在此範例中,一項作業啟動後設有一個斷點,然後該斷點被禁用。 Runspace 會儲存在變數中,並使用 Get-PSBreakPoint 參數傳遞至 命令。
Get-PSBreakPoint 的輸出會管線傳送至 Enable-PSBreakpoint,以啟用 Runspace 中的斷點。
Start-Job -ScriptBlock {
$bp = Set-PSBreakpoint -Command Start-Sleep
Disable-PSBreakpoint $bp
Start-Sleep -Seconds 10
}
$runspace = Get-Runspace -Id 1
Get-PSBreakPoint -Runspace $runspace | Enable-Breakpoint -Runspace $runspace
參數
-Breakpoint
指定要啟用的斷點。 提供包含斷點的變數,或取得斷點物件的命令,例如 Get-PSBreakpoint。 您也可以將斷點物件透過管道傳送到 Enable-PSBreakpoint。
參數屬性
| 類型: | |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
Breakpoint
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | True |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Confirm
在執行 Cmdlet 之前,提示您進行確認。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | False |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | cf |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Id
指定要啟用之斷點的 識別碼 編號。 預設值為所有斷點。
請以數字或變數形式提供 的識別碼。 您無法將 ID 數字傳送至 Enable-PSBreakpoint。 若要尋找斷點的 標識子,請使用 Get-PSBreakpoint Cmdlet。
參數屬性
| 類型: | Int32[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
Id
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-PassThru
傳回 物件,表示正在啟用的斷點。 根據預設,此 Cmdlet 不會產生任何輸出。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Runspace
指定 Runspace 物件的識別符,讓您可以在指定的 runspace 中與斷點互動。
此參數已在PowerShell 7.2中新增。
參數屬性
| 類型: | Runspace |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | RunspaceId |
參數集
Id
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-WhatIf
顯示 Cmdlet 執行時會發生什麼事。 該 Cmdlet 未被執行。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | False |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | 無線 |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
輸入
Breakpoint
您可以使用管線將斷點物件傳導至此 cmdlet。
輸出
None
根據預設,此 Cmdlet 不會傳回任何輸出。
Breakpoint
當您使用 PassThru 參數時,此 Cmdlet 會返回一個代表已啟用斷點的斷點對象。
備註
PowerShell 包含下列 Enable-PSBreakpoint的別名:
所有平臺:
ebp
如果您嘗試啟用已啟用的斷點,則
Enable-PSBreakpointCmdlet 不會產生錯誤。 因此,即使僅有少數斷點被停用,您仍然可以毫無錯誤地啟用所有斷點。當您透過
Set-PSBreakpointcmdlet 建立斷點時,斷點就會被啟用。 您不需要啟用新創建的斷點。