Condividi tramite


Debug-Job

Esegue il debug di un processo del flusso di lavoro di Windows PowerShell, remoto o in esecuzione.

Sintassi

JobParameterSet (Impostazione predefinita)

Debug-Job
    [-Job] <Job>
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

JobNameParameterSet

Debug-Job
    [-Name] <String>
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

JobIdParameterSet

Debug-Job
    [-Id] <Int32>
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

JobInstanceIdParameterSet

Debug-Job
    [-InstanceId] <Guid>
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Descrizione

Il cmdlet Debug-Job consente di eseguire il debug degli script in esecuzione all'interno dei processi. Il cmdlet è progettato per eseguire il debug di processi del flusso di lavoro PowerShell, processi in background e processi in esecuzione in sessioni remote. Debug-Job accetta un oggetto processo in esecuzione, un nome, un ID o un ID istanza come input e avvia una sessione di debug nello script in cui è in esecuzione. Il debugger quit comando arresta il processo ed esegue lo script. Il comando exit scollega il debugger e consente di continuare l'esecuzione del processo.

Esempio

Esempio 1: Eseguire il debug di un processo in base all'ID processo

Questo comando si suddivide in un processo in esecuzione con 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"

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:cfr

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Id

Specifica il numero ID di un processo in esecuzione. Per ottenere il numero ID di un processo, eseguire il cmdlet Get-Job.

Proprietà dei parametri

Tipo:Int32
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

JobIdParameterSet
Posizione:0
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-InstanceId

Specifica il GUID ID istanza di un processo in esecuzione.

Proprietà dei parametri

Tipo:Guid
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

JobInstanceIdParameterSet
Posizione:0
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Job

Specifica un oggetto processo in esecuzione. Il modo più semplice per usare questo parametro consiste nel salvare i risultati di un comando Get-Job che restituisce il processo in esecuzione di cui si vuole eseguire il debug in una variabile e quindi specificare la variabile come valore di questo parametro.

Proprietà dei parametri

Tipo:Job
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

JobParameterSet
Posizione:0
Obbligatorio:True
Valore dalla pipeline:True
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-Name

Specifica un processo in base al nome descrittivo del processo. Quando si avvia un processo, è possibile specificare un nome di processo aggiungendo il parametro jobName, nei cmdlet come Invoke-Command e Start-Job.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

JobNameParameterSet
Posizione:0
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:Wi

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

System.Management.Automation.RemotingJob