Debug-Job
Debuggt einen ausgeführten Hintergrund- oder Remoteauftrag.
Syntax
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>]
Beschreibung
Mit Debug-Job
dem Cmdlet können Sie Skripts debuggen, die innerhalb von Aufträgen ausgeführt werden. Das Cmdlet dient zum Debuggen von PowerShell-Workflowaufträgen, Hintergrundaufträgen und Aufträgen, die in Remotesitzungen ausgeführt werden. Debug-Job
akzeptiert ein ausgeführtes Auftragsobjekt, einen Namen, eine ID oder eine instance-ID als Eingabe und startet eine Debugsitzung für das skript, das ausgeführt wird. Der Debuggerbefehl quit
beendet den Auftrag und die Ausführung des Skripts. Der exit
Befehl trennt den Debugger und ermöglicht die weitere Ausführung des Auftrags.
Beispiele
Beispiel 1: Debuggen eines Auftrags nach Auftrags-ID
Dieser Befehl unterbricht einen ausgeführten Auftrag mit der 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
Ermöglicht es Ihnen, sofort an der aktuellen Position zu unterbrechen, wenn der Debugger angefügt wird.
Der Parameter ist nur als experimentelles Feature verfügbar. Weitere Informationen finden Sie unter Verwenden experimenteller Features.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Id
Gibt die ID-Nummer eines ausgeführten Auftrags an. Führen Sie das Cmdlet aus, um die Get-Job
ID-Nummer eines Auftrags abzurufen.
Type: | Int32 |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InstanceId
Gibt die instance ID-GUID eines ausgeführten Auftrags an.
Type: | Guid |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Job
Gibt ein ausgeführtes Auftragsobjekt an. Die einfachste Möglichkeit, diesen Parameter zu verwenden, besteht darin, die Ergebnisse eines Get-Job
Befehls zu speichern, der den ausgeführten Auftrag zurückgibt, den Sie in einer Variablen debuggen möchten, und dann die Variable als Wert dieses Parameters anzugeben.
Type: | Job |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Gibt einen Auftrag anhand des Anzeigenamens des Auftrags an. Wenn Sie einen Auftrag starten, können Sie einen Auftragsnamen angeben, indem Sie den JobName-Parameter in Cmdlets wie Invoke-Command
und Start-Job
hinzufügen.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Eingaben
System.Management.Automation.RemotingJob