Debug-Job
Felsöker en bakgrunds-, fjärr- eller Windows PowerShell-arbetsflödesjobb.
Syntax
Debug-Job
[-Job] <Job>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Debug-Job
[-Name] <String>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Debug-Job
[-Id] <Int32>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Debug-Job
[-InstanceId] <Guid>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Med cmdleten Debug-Job kan du felsöka skript som körs i jobb. Cmdleten är utformad för att felsöka Windows PowerShell-arbetsflödesjobb, bakgrundsjobb och jobb som körs i fjärrsessioner. Felsökningsjobb accepterar ett jobbobjekt, namn, ID eller instans-ID som indata och startar en felsökningssession i skriptet som körs. Felsökningsprogrammet avsluta-kommandot stoppar jobbet och skriptet som körs. Från och med Windows PowerShell 5.0 kopplar kommandot avsluta bort felsökningsprogrammet och låter jobbet fortsätta att köras.
Exempel
Exempel 1: Felsöka ett jobb efter jobb-ID
PS C:\> 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"
Det här kommandot bryter sig in i ett jobb som körs med ett ID på 3.
Parametrar
-Confirm
Uppmanar dig att bekräfta innan du kör cmdleten.
Typ: | SwitchParameter |
Alias: | cf |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Id
Anger ID-numret för ett jobb som körs. Kör cmdleten Get-Job för att hämta ID-numret för ett jobb.
Typ: | Int32 |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-InstanceId
Anger instans-ID GUID för ett jobb som körs. Om du vill hämta InstanceId för ett jobb kör du cmdleten Get-Job och dirigerar resultatet till en Format-* cmdlet, som du ser i följande exempel:
Get-Job | Format-List -Property Id,Name,InstanceId,State
Typ: | Guid |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Job
Anger ett jobbobjekt som körs. Det enklaste sättet att använda den här parametern är att spara resultatet av ett Get-Job-kommando som returnerar det jobb som körs som du vill felsöka i en variabel och sedan ange variabeln som värdet för den här parametern.
Typ: | Job |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Name
Anger ett jobb med det egna namnet på jobbet. När du startar ett jobb kan du ange ett jobbnamn genom att lägga till parametern JobName i cmdletar som Invoke-Command och Start-Job.
Typ: | String |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-WhatIf
Visar vad som skulle hända om cmdleten körs. Cmdleten körs inte.
Typ: | SwitchParameter |
Alias: | wi |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
System.Management.Automation.RemotingJob