Debug-Job

Men-debug latar belakang yang sedang berjalan atau pekerjaan jarak jauh.

Sintaks

Debug-Job
     [-Job] <Job>
     [-BreakAll]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Debug-Job
     [-Name] <String>
     [-BreakAll]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Debug-Job
     [-Id] <Int32>
     [-BreakAll]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Debug-Job
     [-InstanceId] <Guid>
     [-BreakAll]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Deskripsi

Debug-Job Cmdlet memungkinkan Anda men-debug skrip yang berjalan dalam pekerjaan. Cmdlet dirancang untuk men-debug pekerjaan Alur Kerja PowerShell, pekerjaan latar belakang, dan pekerjaan yang berjalan dalam sesi jarak jauh. Debug-Job menerima objek pekerjaan yang sedang berjalan, nama, ID, atau ID instans sebagai input, dan memulai sesi penelusuran kesalahan pada skrip yang dijalankannya. Perintah debugger quit menghentikan pekerjaan dan menjalankan skrip. Perintah exit mencopot debugger, dan memungkinkan pekerjaan untuk terus berjalan.

Contoh

Contoh 1: Men-debug pekerjaan berdasarkan ID pekerjaan

Perintah ini memecah menjadi pekerjaan yang sedang berjalan dengan ID 3.

Debug-Job -ID 3

Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
3      Job3            RemoteJob       Running       True            PowerShellIx         TestWFDemo1.ps1
          Entering debug mode. Use h or ? for help.

          Hit Line breakpoint on 'C:\TestWFDemo1.ps1:8'

          At C:\TestWFDemo1.ps1:8 char:5
          +     Write-Output -InputObject "Now writing output:"
          +     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          [DBG:PowerShellIx]: PS C:\> > list

              3:
              4:  workflow SampleWorkflowTest
              5:  {
              6:      param ($MyOutput)
              7:
              8:*     Write-Output -InputObject "Now writing output:"
              9:      Write-Output -Input $MyOutput
             10:
             11:      Write-Output -InputObject "Get PowerShell process:"
             12:      Get-Process -Name powershell
             13:
             14:      Write-Output -InputObject "Workflow function complete."
             15:  }
             16:
             17:  # Call workflow function
             18:  SampleWorkflowTest -MyOutput "Hello"

Parameter

-BreakAll

Memungkinkan Anda untuk segera istirahat di lokasi saat ini ketika debugger melampirkan.

Parameter ini ditambahkan di PowerShell 7.2.

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

-Confirm

Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.

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

-Id

Menentukan nomor ID dari pekerjaan yang sedang berjalan. Untuk mendapatkan nomor ID pekerjaan, jalankan Get-Job cmdlet.

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

-InstanceId

Menentukan GUID ID instans dari pekerjaan yang sedang berjalan.

Type:Guid
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Job

Menentukan objek pekerjaan yang sedang berjalan. Cara paling sederhana untuk menggunakan parameter ini adalah dengan menyimpan hasil Get-Job perintah yang mengembalikan pekerjaan yang sedang berjalan yang ingin Anda debug dalam variabel, lalu menentukan variabel sebagai nilai parameter ini.

Type:Job
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Menentukan pekerjaan dengan nama pekerjaan yang mudah diingat. Saat memulai pekerjaan, Anda dapat menentukan nama pekerjaan dengan menambahkan parameter JobName , dalam cmdlet seperti Invoke-Command dan Start-Job.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.

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

Input

System.Management.Automation.RemotingJob