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"
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.
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.
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.
L'origine di questo contenuto è disponibile in GitHub, in cui è anche possibile creare ed esaminare i problemi e le richieste pull. Per ulteriori informazioni, vedere la guida per i collaboratori.