Resume-Job
Startar om ett pausat jobb.
Syntax
Resume-Job
[-Wait]
[-Id] <Int32[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Resume-Job
[-Job] <Job[]>
[-Wait]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Resume-Job
[-Wait]
[-Name] <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Resume-Job
[-Wait]
[-InstanceId] <Guid[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Resume-Job
[-Wait]
[-State] <JobState>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Resume-Job
[-Wait]
[-Filter] <Hashtable>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Cmdleten Resume-Job
återupptar ett arbetsflödesjobb som pausades, till exempel genom att använda cmdleten Suspend-Job
eller aktiviteten about_Suspend-Workflow . När ett arbetsflödesjobb återupptas rekonstruerar jobbmotorn tillståndet, metadata och utdata från sparade resurser, till exempel kontrollpunkter. Jobbet startas om utan förlust av tillstånd eller data.
Jobbtillståndet ändras från Pausad till Körs.
Använd parametrarna Resume-Job
för för att välja jobb efter namn, ID, instans-ID eller skicka ett jobbobjekt, till exempel ett som returneras av cmdleten Get-Job
, till Resume-Job
. Du kan också använda ett egenskapsfilter för att välja ett jobb som ska återupptas.
Som standard Resume-Job
returneras omedelbart, även om alla jobb kanske inte återupptas ännu. Om du vill ignorera kommandotolken tills alla angivna jobb återupptas använder du parametern Vänta .
Cmdleten Resume-Job
fungerar bara på anpassade jobbtyper, till exempel arbetsflödesjobb. Det fungerar inte på standardbakgrundsjobb, till exempel de som startas med hjälp av cmdleten Start-Job
. Om du skickar ett jobb av en typ som Resume-Job
inte stöds genererar ett avslutande fel och slutar köras.
Om du vill identifiera ett arbetsflödesjobb letar du efter värdet PSWorkflowJob i psJobTypeName-egenskapen för jobbet. Information om huruvida en viss anpassad jobbtyp stöder cmdleten Resume-Job
finns i hjälpavsnitten för den anpassade jobbtypen.
Innan du använder en jobb-cmdlet på en anpassad jobbtyp importerar du modulen som stöder den anpassade jobbtypen, antingen genom att använda cmdleten Import-Module
eller hämta eller använda en cmdlet i modulen.
Den här cmdleten introducerades i Windows PowerShell 3.0.
Exempel
Exempel 1: Återuppta ett jobb efter ID
Kommandona i det här exemplet kontrollerar att jobbet är ett pausat arbetsflödesjobb och återupptar sedan jobbet. Det första kommandot använder cmdleten Get-Job
för att hämta jobbet. Utdata visar att jobbet är ett inaktiverat arbetsflödesjobb. Det andra kommandot använder ID-parametern för cmdleten Resume-Job
för att återuppta jobbet med ID-värdet 4.
PS C:\> Get-Job EventJob
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
4 EventJob PSWorkflowJob Suspended True Server01 \\Script\Share\Event.ps1
PS C:\> Resume-Job -Id 4
Exempel 2: Återuppta ett jobb efter namn
Det här kommandot använder parametern Namn för att återuppta flera arbetsflödesjobb på den lokala datorn.
PS C:\> Resume-Job -Name WorkflowJob, InventoryWorkflow, WFTest*
Exempel 3: Använd anpassade egenskapsvärden
Det här kommandot använder värdet för en anpassad egenskap för att identifiera arbetsflödesjobbet som ska återupptas. Den använder parametern Filter för att identifiera arbetsflödesjobbet med dess CustomID-egenskap . Den använder också parametern Tillstånd för att verifiera att arbetsflödesjobbet är pausat innan det försöker återuppta det.
PS C:\> Resume-Job -Filter @{CustomID="T091291"} -State Suspended
Exempel 4: Återuppta alla pausade jobb på en fjärrdator
Det här kommandot återupptar alla pausade jobb på Srv01-fjärrdatorn.
PS C:\> Invoke-Command -ComputerName Srv01 -ScriptBlock {Get-Job -State Suspended | Resume-Job}
Kommandot använder cmdleten Invoke-Command
för att köra ett kommando på Srv01-datorn. Fjärrkommandot använder parametern State för cmdleten Get-Job
för att hämta alla pausade jobb på datorn. En pipelineoperator (|
) skickar de pausade jobben till cmdleten Resume-Job
, som återupptar dem.
Exempel 5: Vänta tills jobben återupptas
Det här kommandot använder parametern Wait för att direkt Resume-Job
returnera först när alla angivna jobb har återupptagits. Parametern Wait är särskilt användbar i skript som förutsätter att jobb återupptas innan skriptet fortsätter.
PS C:\> Resume-Job -Name WorkflowJob, InventoryWorkflow, WFTest* -Wait
Exempel 6: Återuppta ett arbetsflöde som pausar sig självt
Det här kodexemplet visar Suspend-Workflow
aktiviteten i ett arbetsflöde.
Arbetsflödet Test-Suspend
på Server01-datorn. När du kör arbetsflödet kör Get-Date
arbetsflödet aktiviteten och lagrar resultatet i variabeln $a
. Sedan körs Suspend-Workflow
aktiviteten. Som svar tar den en kontrollpunkt, pausar arbetsflödet och returnerar ett arbetsflödesjobbobjekt. Suspend-Workflow
returnerar ett arbetsflödesjobbobjekt även om arbetsflödet inte uttryckligen körs som ett jobb.
Resume-Job
återupptar Test-Suspend
arbetsflödet i Job8. Den använder parametern Wait för att lagra kommandotolken tills jobbet återupptas.
Cmdleten Receive-Job
hämtar resultatet av Test-Suspend
arbetsflödet. Det sista kommandot i arbetsflödet returnerar ett TimeSpan-objekt som representerar den förflutna tiden mellan aktuellt datum och tid och det datum och den tid som sparades i variabeln $a
innan arbetsflödet avbröts.
#SampleWorkflow
Workflow Test-Suspend
{
$a = Get-Date
Suspend-Workflow
(Get-Date)- $a
}
PS C:\> Test-Suspend -PSComputerName Server01
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
8 Job8 PSWorkflowJob Suspended True Server01 Test-Suspend
PS C:\> Resume-Job -Name "Job8" -Wait
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
8 Job8 PSWorkflowJob Running True Server01 Test-Suspend
PS C:\> Receive-Job -Name Job8
Days : 0
Hours : 0
Minutes : 0
Seconds : 19
Milliseconds : 823
Ticks : 198230041
TotalDays : 0.000229432917824074
TotalHours : 0.00550639002777778
TotalMinutes : 0.330383401666667
TotalSeconds : 19.8230041
TotalMilliseconds : 19823.0041
PSComputerName : Server01
Med Resume-Job
cmdleten kan du återuppta ett arbetsflödesjobb som pausades med hjälp Suspend-Workflow
av aktiviteten. Den här aktiviteten inaktiverar ett arbetsflöde inifrån ett arbetsflöde. Den är endast giltig i arbetsflöden.
Mer information om finns i Suspend-Workflow
about_Suspend-Workflow](.. /PSWorkflow/about/about_Suspend-Workflow.md).
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 |
-Filter
Anger en hash-tabell med villkor. Den här cmdleten återupptar jobb som uppfyller alla villkor i hash-tabellen. Ange en hash-tabell där nycklarna är jobbegenskaper och värdena är jobbegenskapsvärden.
Typ: | Hashtable |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Id
Anger en matris med ID:er för jobb som den här cmdleten återupptar.
ID:t är ett heltal som unikt identifierar jobbet i den aktuella sessionen. Det är lättare att komma ihåg och skriva än instans-ID, men det är bara unikt i den aktuella sessionen. Du kan skriva ett eller flera ID:er, avgränsade med kommatecken. Om du vill hitta ID:t för ett jobb kör du Get-Job
.
Typ: | Int32[] |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-InstanceId
Anger en matris med instans-ID:t för jobb som den här cmdleten återupptar. Standardvärdet är alla jobb.
Ett instans-ID är ett GUID som unikt identifierar jobbet på datorn. Om du vill hitta instans-ID:t för ett jobb kör du Get-Job
.
Typ: | Guid[] |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Job
Anger vilka jobb som ska återupptas. Ange en variabel som innehåller jobben eller ett kommando som hämtar jobben. Du kan också skicka jobb till cmdleten Resume-Job
.
Typ: | Job[] |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Name
Anger en matris med egna namn på jobb som cmdleten återupptar. Ange ett eller flera jobbnamn. Jokertecken tillåts.
Typ: | String[] |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-State
Anger tillståndet för jobb som ska återupptas. De acceptabla värdena för den här parametern är:
- NotStarted
- Körs
- Slutförd
- Misslyckad
- Stoppat
- Spärrad
- Inaktiverad
- Frånkopplad
- Avbryter
- Stoppas
Den här cmdleten återupptar endast jobb i tillståndet Pausat .
Mer information om jobbtillstånd finns i JobState-uppräkning.
Typ: | JobState |
Godkända värden: | NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Wait
Anger att den här cmdleten undertrycker kommandotolken tills alla jobbresultat startas om. Som standard returnerar den här cmdleten omedelbart de tillgängliga resultaten.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-WhatIf
Visar vad som skulle hända om cmdleten kördes. 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
Du kan skicka alla typer av jobb till den här cmdleten. Om Resume-Job
hämtar ett jobb av en typ som inte stöds returneras ett avslutande fel.
Utdata
None, System.Management.Automation.Job
Den här cmdleten returnerar jobben som den försöker återuppta om du använder parametern PassThru . Annars genererar den här cmdleten inga utdata.
Kommentarer
Windows PowerShell innehåller följande alias för Resume-Job
:
rujb
Resume-Job
kan bara återuppta jobb som är pausade. Om du skickar ett jobb i ett annat tillståndResume-Job
kör du återuppta-åtgärden för jobbet, men genererar en varning om att jobbet inte kunde återupptas. Om du vill ignorera varningen använder du den vanliga parametern WarningAction med värdet SilentlyContinue.Om ett jobb inte är av en typ som stöder återupptagande, till exempel ett arbetsflödesjobb (PSWorkflowJob),
Resume-Job
returneras ett avslutande fel.Mekanismen och platsen för att spara ett pausat jobb kan variera beroende på jobbtyp. Till exempel sparas pausade arbetsflödesjobb i ett platt filarkiv som standard, men kan också sparas i en SQL-databas.
När du återupptar ett jobb ändras jobbtillståndet från Pausat till Körs. Om du vill hitta jobben som körs, inklusive de som återupptogs av den här cmdleten, använder du parametern State för cmdleten
Get-Job
för att hämta jobb i tillståndet Körs .Vissa jobbtyper har alternativ eller egenskaper som hindrar Windows PowerShell från att pausa jobbet. Om det inte går att pausa jobbet kontrollerar du att jobbalternativen och egenskaperna tillåter pausning.