共用方式為


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