Set-PSDebug
Betik hata ayıklama özelliklerini açar ve kapatır, izleme düzeyini ayarlar ve katı modu değiştirir.
Sözdizimi
Set-PSDebug
[-Trace <Int32>]
[-Step]
[-Strict]
[<CommonParameters>]
Set-PSDebug
[-Off]
[<CommonParameters>]
Description
Set-PSDebug
cmdlet'i betik hata ayıklama özelliklerini açar ve kapatır, izleme düzeyini ayarlar ve katı modu değiştirir. Varsayılan olarak, PowerShell hata ayıklama özellikleri kapalıdır.
İzleme parametresi 1
değerine sahip olduğunda, her betik satırı çalıştırılırken izleniyor. parametresinin değeri 2
olduğunda değişken atamaları, işlev çağrıları ve betik çağrıları da izlenir.
Adımı parametresi belirtilirse, betiğin her satırı çalışmadan önce istenir.
Örnekler
Örnek 1: İzleme düzeyini ayarlama
Bu örnek, izleme düzeyini 2
olarak ayarlar ve ardından 1, 2 ve 3 sayılarını görüntüleyen bir betik çalıştırır.
Set-PSDebug -Trace 2; foreach ($i in 1..3) {$i}
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in >>>> 1..3) {$i}
DEBUG: ! SET $foreach = 'IEnumerator'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '1'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
1
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '2'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
2
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $i = '3'.
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ($i in 1..3) { >>>> $i}
3
DEBUG: 1+ Set-PSDebug -Trace 2; foreach ( >>>> $i in 1..3) {$i}
DEBUG: ! SET $foreach = ''.
Örnek 2: Adımlama özelliğini açma
Bu örnek, adımlama işlemini açar ve ardından 1, 2 ve 3 sayılarını görüntüleyen bir betik çalıştırır.
Set-PSDebug -Step; foreach ($i in 1..3) {$i}
Continue with this operation?
1+ Set-PSDebug -Step; foreach ($i in >>>> 1..3) {$i}
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): A
DEBUG: 1+ Set-PSDebug -Step; foreach ($i in >>>> 1..3) {$i}
1
2
3
Örnek 3: Katı modu kullanma
Bu örnek PowerShell'i katı moda alır ve atanmış değeri olmayan bir değişkene erişmeye çalışır.
Set-PSDebug -Strict; $NewVar
The variable '$NewVar' cannot be retrieved because it has not been set.
At line:1 char:22
+ Set-PSDebug -Strict; $NewVar
Örnek 4: Hata ayıklama özelliklerini kapatma
Bu örnek tüm hata ayıklama özelliklerini kapatır ve ardından 1, 2 ve 3 sayılarını görüntüleyen bir betik çalıştırır.
Set-PSDebug -Off; foreach ($i in 1..3) {$i}
1
2
3
Parametreler
-Off
Tüm betik hata ayıklama özelliklerini kapatır.
Tür: | SwitchParameter |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Step
Betik adımlarını açar. Her satır çalışmadan önce, PowerShell sizden betiğin durumunu incelemek için durdurmanızı, devam etmenizi veya yeni bir yorumlayıcı düzeyi girmenizi ister.
Adım parametresinin belirtilmesi otomatik olarak 1
izleme düzeyini ayarlar.
Tür: | SwitchParameter |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Strict
Bir betikte başvurulmadan önce değişkenlere bir değer atanması gerektiğini belirtir. Bir değer atanmadan önce bir değişkene başvurulursa PowerShell bir özel durum hatası döndürür. Bu, Set-StrictMode -Version 1
eşdeğerdir. Daha fazla bilgi için bkz. Set-StrictMode .
Tür: | SwitchParameter |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Trace
Betikteki her satır için izleme düzeyini belirtir. Her satır çalıştırılırken izleniyor.
Bu parametre için kabul edilebilir değerler aşağıdaki gibidir:
- 0: Betik izlemeyi kapatın.
- 1: Betik satırlarını çalışırken izleme.
- 2: Betik satırlarını, değişken atamalarını, işlev çağrılarını ve betikleri izleme.
Tür: | Int32 |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
Girişler
None
Nesneleri bu cmdlet'e yöneltemezsiniz.
Çıkışlar
None
Bu cmdlet çıkış döndürmez.