Share via


Enable-PSBreakpoint

Geçerli konsoldaki kesme noktalarını etkinleştirir.

Syntax

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

Description

Enable-PSBreakpoint Cmdlet devre dışı bırakılan kesme noktalarını yeniden etkinleştirir. Kesme noktası nesneleri veya kimlikleri sağlayarak tüm kesme noktalarını veya belirli kesme noktalarını etkinleştirmek için kullanabilirsiniz.

Kesme noktası, betiğin durumunu inceleyebilmeniz için yürütmenin geçici olarak durduğu bir betik noktasıdır. Yeni oluşturulan kesme noktaları otomatik olarak etkinleştirilir, ancak kullanılarak Disable-PSBreakpointdevre dışı bırakılabilir.

Teknik olarak, bu cmdlet bir kesme noktası nesnesinin Enabled özelliğinin değerini True olarak değiştirir.

Enable-PSBreakpoint , PowerShell betiklerinde hata ayıklamak için tasarlanmış çeşitli cmdlet'lerden biridir. PowerShell hata ayıklayıcısı hakkında daha fazla bilgi için bkz . about_Debuggers.

Örnekler

Örnek 1: Tüm kesme noktalarını etkinleştirme

Bu örnek geçerli oturumdaki tüm kesme noktalarını etkinleştirir.

Get-PSBreakpoint | Enable-PSBreakpoint

Diğer adlar kullanılarak bu örnek olarak gbp | ebpkısaltılabilir.

Örnek 2: Kesme noktalarını kimliklerine göre etkinleştirme

Bu örnek, kesme noktası kimliklerini kullanarak birden çok kesme noktası sağlar.

Enable-PSBreakpoint -Id 0, 1, 5

Örnek 3: Devre dışı bırakılmış kesme noktasını etkinleştirme

Bu örnek, devre dışı bırakılmış bir kesme noktasını yeniden etkinleştirir.

$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 , betikteki Name değişkeninde Sample.ps1 kesme noktası nesnesini değişkene $B kaydeden bir kesme noktası oluşturur. PassThru parametresi kesme noktasının Enabled özelliğinin değerini False olarak görüntüler.

Enable-PSBreakpoint kesme noktasını yeniden etkinleştirir. Yine PassThru parametresini kullanarak Enabled özelliğinin değerinin True olduğunu görüyoruz.

Örnek 4: Değişken kullanarak kesme noktalarını etkinleştirme

Bu örnek, kesme noktası nesnelerini kullanarak bir dizi kesme noktası sağlar.

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

Get-PSBreakpoint kesme noktalarını alır ve değişkene $B kaydeder. Kesme noktası parametresini kullanarak kesme Enable-PSBreakpoint noktalarını etkinleştirir.

Bu örnek, çalıştırmaya Enable-PSBreakpoint -Id 3, 5eşdeğerdir.

Örnek 5: Bir çalışma alanında kesme noktasını etkinleştirme

Bu örnekte, kesme noktası ile bir iş başlatılır ve sonra devre dışı bırakılır. Runspace bir değişkende depolanır ve Runspace parametresiyle komutuna geçirilirGet-PSBreakPoint. çıkışı Get-PSBreakPoint , çalışma alanında kesme noktasını etkinleştirmek için öğesine kanalı Enable-PSBreakpoint oluşturulur.

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

Parametreler

-Breakpoint

Etkinleştirileceği kesme noktalarını belirtir. Kesme noktaları içeren bir değişken veya gibi Get-PSBreakpointkesme noktası nesnelerini alan bir komut sağlayın. Kesme noktası nesnelerini öğesine Enable-PSBreakpointde yöneltebilirsiniz.

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

-Confirm

Cmdlet'i çalıştırmadan önce sizden onay ister.

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

-Id

Etkinleştirileceği kesme noktalarının kimlik numaralarını belirtir. Varsayılan değer tüm kesme noktalarıdır. Numaraya veya değişkene göre kimlik belirtin. Kimlik numaralarını adresine Enable-PSBreakpointyöneltemezsiniz. Kesme noktasının kimliğini bulmak için cmdlet'ini Get-PSBreakpoint kullanın.

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

-PassThru

Etkinleştirilmekte olan kesme noktasını temsil eden bir nesne döndürür. Varsayılan olarak, bu cmdlet herhangi bir çıkış oluşturmaz.

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

-Runspace

Belirtilen çalışma alanında kesme noktalarıyla etkileşim kurabilmeniz için Runspace nesnesinin kimliğini belirtir.

Bu parametre PowerShell 7.2'ye eklendi.

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

-WhatIf

Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmıyor.

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

Girişler

Breakpoint

Kesme noktası nesnesini bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

None

Varsayılan olarak, bu cmdlet çıkış döndürmez.

Breakpoint

PassThru parametresini kullandığınızda, bu cmdlet etkin kesme noktasını temsil eden bir kesme noktası nesnesi döndürür.

Notlar

PowerShell için aşağıdaki diğer adları Enable-PSBreakpointiçerir:

  • Tüm platformlar:

    • ebp
  • Enable-PSBreakpoint Zaten etkinleştirilmiş bir kesme noktasını etkinleştirmeye çalışırsanız cmdlet hata oluşturmaz. Bu nedenle, yalnızca birkaçı devre dışı bırakıldığında bile tüm kesme noktalarını hatasız olarak etkinleştirebilirsiniz.

  • Kesme noktaları, cmdlet'ini Set-PSBreakpoint kullanarak oluşturduğunuzda etkinleştirilir. Yeni oluşturulan kesme noktalarını etkinleştirmeniz gerekmez.