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 は、スクリプト内の Name 変数にブレークポイントを作成し、 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 パラメーターを使用して 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をパイプすることもできます。

Type:Breakpoint[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

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

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

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

Type:Int32[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Runspace

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

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

Type:Runspace
Aliases:RunspaceId
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

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

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

入力

Breakpoint

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

出力

None

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

Breakpoint

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

メモ

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

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

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

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