次の方法で共有


Enable-PSBreakpoint

現在のコンソール内のブレークポイントを有効にします。

構文

Enable-PSBreakpoint
      [-PassThru]
      [-Breakpoint] <Breakpoint[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Enable-PSBreakpoint
      [-PassThru]
      [-Id] <Int32[]>
      [-Runspace <Runspace>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

説明

Enable-PSBreakpoint コマンドレットは、無効なブレークポイントを再度有効にします。 これを使用して、ブレークポイント オブジェクトまたは ID を指定することで、すべてのブレークポイントまたは特定のブレークポイントを有効にすることができます。

ブレークポイントは、スクリプトの状態を調べることができるように、実行が一時的に停止するスクリプト内のポイントです。 新しく作成されたブレークポイントは自動的に有効になりますが、 Disable-PSBreakpointを使用して無効にできます。

技術的には、このコマンドレットはブレークポイント オブジェクトの Enabled プロパティの値を True に変更します。

Enable-PSBreakpoint は、PowerShell スクリプトのデバッグ用に設計されたいくつかのコマンドレットの 1 つです。 PowerShell デバッガーの詳細については、「 about_Debuggers」を参照してください。

例 1: すべてのブレークポイントを有効にする

この例では、現在のセッションのすべてのブレークポイントを有効にします。

Get-PSBreakpoint | Enable-PSBreakpoint

エイリアスを使用すると、この例は gbp | ebpと省略できます。

例 2: ID でブレークポイントを有効にする

この例では、ブレークポイント 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は、ブレークポイント オブジェクトを $B 変数に保存するSample.ps1 スクリプトの Name 変数にブレークポイントを作成します。 PassThru パラメーターは、ブレークポイントの Enabled プロパティの値がFalseを表示します。

Enable-PSBreakpoint ブレークポイントを再び有効にします。 ここでも、 PassThru パラメーターを使用すると、 Enabled プロパティの値が Trueであることがわかります。

例 4: 変数を使用してブレークポイントを有効にする

この例では、ブレークポイント オブジェクトを使用してブレークポイントのセットを有効にします。

$B = Get-PSBreakpoint -Id 3, 5
Enable-PSBreakpoint -Breakpoint $B

Get-PSBreakpoint はブレークポイントを取得し、 $B 変数に保存します。 Breakpoint パラメーターを使用して、ブレークポイントEnable-PSBreakpoint有効にします。

この例は、 Enable-PSBreakpoint -Id 3, 5の実行と同じです。

例 5: 実行空間でブレークポイントを有効にする

この例では、ブレークポイントを中断してから無効に設定してジョブを開始します。 実行空間は変数に格納され、Runspace パラメーターを使用して Get-PSBreakPoint コマンドに渡されます。 Get-PSBreakPointの出力は、実行空間でブレークポイントを有効にするためにEnable-PSBreakpointにパイプされます。

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することもできます。

型:Breakpoint[]
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

型:SwitchParameter
Aliases:cf
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Id

有効にするブレークポイントの Id 番号を指定します。 既定値はすべてのブレークポイントです。 Idを数値または変数で指定します。 Id番号をパイプしてEnable-PSBreakpointすることはできません。 ブレークポイントの Id を検索するには、 Get-PSBreakpoint コマンドレットを使用します。

型:Int32[]
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-PassThru

有効になっているブレークポイントを表すオブジェクトを返します。 既定では、このコマンドレットは出力を生成しません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Runspace

指定した実行空間内のブレークポイントと対話できるように、 Runspace オブジェクトの ID を指定します。

このパラメーターは PowerShell 7.2 で追加されました。

型:Runspace
Aliases:RunspaceId
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-WhatIf

コマンドレットの実行時に発生する内容を示します。 コマンドレットは実行されません。

型:SwitchParameter
Aliases:wi
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

Breakpoint

ブレークポイント オブジェクトをこのコマンドレットにパイプできます。

出力

None

既定では、このコマンドレットは出力を返しません。

Breakpoint

PassThru パラメーターを使用すると、このコマンドレットは、有効なブレークポイントを表すブレークポイント オブジェクトを返します。

メモ

PowerShell には、 Enable-PSBreakpointの次のエイリアスが含まれています。

  • すべてのプラットフォーム:

    • ebp
  • 既に有効になっているブレークポイントを有効にしようとしても、 Enable-PSBreakpoint コマンドレットはエラーを生成しません。 そのため、一部のブレークポイントのみが無効な場合でも、エラーを生成せずにすべてのブレークポイントを有効にできます。

  • ブレークポイントは、 Set-PSBreakpoint コマンドレットを使用してブレークポイントを作成するときに有効になります。 新しく作成されたブレークポイントを有効にする必要はありません。