Set-PSDebug
Menghidupkan dan mematikan fitur debug skrip, mengatur tingkat penelusuran, dan mengaktifkan mode ketat.
Sintaks
on
Set-PSDebug
[-Trace <Int32>]
[-Step]
[-Strict]
[<CommonParameters>]
off
Set-PSDebug
[-Off]
[<CommonParameters>]
Deskripsi
cmdlet Set-PSDebug mengaktifkan dan menonaktifkan fitur debugging skrip, mengatur tingkat jejak, dan mengaktifkan mode ketat. Secara default, fitur debug PowerShell nonaktif.
Ketika parameter 2, penetapan variabel, panggilan fungsi, dan panggilan skrip juga dilacak. Jika parameter Langkah ditentukan, Anda akan diminta konfirmasi sebelum setiap baris skrip berjalan.
Contoh
Contoh 1: Mengatur tingkat pelacakan
Contoh ini mengatur tingkat pelacakan ke 2, lalu menjalankan skrip yang menampilkan angka 1, 2, dan 3.
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 = ''.
Contoh 2: Aktifkan mode langkah
Contoh ini mengaktifkan langkah, lalu menjalankan skrip yang menampilkan angka 1, 2, dan 3.
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
Contoh 3: Gunakan mode ketat
Contoh ini menempatkan PowerShell dalam mode ketat dan mencoba mengakses variabel yang tidak memiliki nilai yang ditetapkan.
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
Contoh 4: Menonaktifkan fitur debug
Contoh ini menonaktifkan semua fitur penelusuran kesalahan, lalu menjalankan skrip yang menampilkan angka 1, 2, dan 3.
Set-PSDebug -Off; foreach ($i in 1..3) {$i}
1
2
3
Parameter
-Off
Menonaktifkan semua fitur debugging skrip.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | False |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
off
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Step
Mengaktifkan penelusuran langkah-langkah skrip. Sebelum setiap baris berjalan, PowerShell meminta Anda untuk menghentikan, melanjutkan, atau memasukkan tingkat penerjemah baru untuk memeriksa status skrip.
Menentukan parameter Langkah secara otomatis mengatur level pelacakan 1.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | False |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
on
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Strict
Menentukan bahwa variabel harus diberi nilai sebelum direferensikan dalam skrip. Jika variabel direferensikan sebelum nilai ditetapkan, PowerShell mengembalikan kesalahan pengecualian. Ini setara dengan Set-StrictMode -Version 1. Untuk informasi selengkapnya, lihat Set-StrictMode.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | False |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
on
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Trace
Menentukan tingkat pelacakan untuk setiap baris dalam skrip. Setiap baris dilacak saat dijalankan.
Nilai yang dapat diterima untuk parameter ini adalah sebagai berikut:
- 0: Matikan pelacakan skrip.
- 1: Lacak baris-baris skrip saat sedang dijalankan.
- 2: Melacak baris skrip, penetapan variabel, panggilan fungsi, dan skrip.
Properti parameter
| Jenis: | Int32 |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
on
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
CommonParameters
Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.
Input
None
Anda tidak dapat menyalurkan objek ke cmdlet ini.
Output
None
Cmdlet ini tidak mengembalikan output.