Resume-Job
Start een onderbroken taak opnieuw.
Syntaxis
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
De cmdlet Resume-Job hervat een werkstroomtaak die is onderbroken, zoals met behulp van de Suspend-Job-cmdlet of de activiteit about_Suspend-Workflow. Wanneer een werkstroomtaak wordt hervat, reconstrueert de taakengine de status, metagegevens en uitvoer van opgeslagen resources, zoals controlepunten. De taak wordt opnieuw gestart zonder verlies van status of gegevens. De taakstatus wordt gewijzigd van onderbroken in Wordt uitgevoerd.
Gebruik de parameters van
Standaard wordt Cv-taak onmiddellijk geretourneerd, ook al zijn alle taken mogelijk nog niet hervat. Als u de opdrachtprompt wilt onderdrukken totdat alle opgegeven taken zijn hervat, gebruikt u de parameter Wacht.
De cmdlet Resume-Job werkt alleen voor aangepaste taaktypen, zoals werkstroomtaken. Het werkt niet aan standaardachtergrondtaken, zoals taken die zijn gestart met behulp van de Start-Job-cmdlet. Als u een taak van een niet-ondersteund type verzendt, genereert cv-taak een afsluitfout en wordt de uitvoering gestopt.
Als u een werkstroomtaak wilt identificeren, zoekt u naar een waarde van PSWorkflowJob in de eigenschap PSJobTypeName van de taak. Als u wilt bepalen of een bepaald aangepast taaktype de cmdlet Resume-Job ondersteunt, raadpleegt u de Help-onderwerpen voor het aangepaste taaktype.
Voordat u een taak-cmdlet op een aangepast taaktype gebruikt, importeert u de module die het aangepaste taaktype ondersteunt, met behulp van de Import-Module-cmdlet of haalt of gebruikt u een cmdlet in de module.
Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.
Voorbeelden
Voorbeeld 1: Een taak hervatten op id
The first command uses the **Get-Job** cmdlet to get the job. The output shows that the job is a suspended workflow job.
PS C:\> Get-Job EventJob
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
4 EventJob PSWorkflowJob Suspended True Server01 \\Script\Share\Event.ps1
The second command uses the *Id* parameter of the **Resume-Job** cmdlet to resume the job with an *Id* value of 4.
PS C:\> Resume-Job -Id 4
Met de opdrachten in dit voorbeeld controleert u of de taak een onderbroken werkstroomtaak is en hervat u de taak.
Voorbeeld 2: Een taak hervatten op naam
PS C:\> Resume-Job -Name WorkflowJob, InventoryWorkflow, WFTest*
Deze opdracht maakt gebruik van de parameter Name om verschillende werkstroomtaken op de lokale computer te hervatten.
Voorbeeld 3: Aangepaste eigenschapswaarden gebruiken
PS C:\> Resume-Job -Filter @{CustomID="T091291"} -State Suspended
Met deze opdracht wordt de waarde van een aangepaste eigenschap gebruikt om de werkstroomtaak te identificeren die moet worden hervat. De parameter Filter wordt gebruikt om de werkstroomtaak te identificeren op basis van de eigenschap CustomID. Ook wordt de parameter State gebruikt om te controleren of de werkstroomtaak is onderbroken voordat deze wordt hervat.
Voorbeeld 4: Alle onderbroken taken op een externe computer hervatten
PS C:\> Invoke-Command -ComputerName Srv01 -ScriptBlock {Get-Job -State Suspended | Resume-Job}
Met deze opdracht worden alle onderbroken taken op de externe Srv01-computer hervat.
De opdracht gebruikt de Invoke-Command cmdlet om een opdracht uit te voeren op de Srv01-computer. De externe opdracht gebruikt de State parameter van de cmdlet Get-Job om alle onderbroken taken op de computer op te halen. Een pijplijnoperator (|) verzendt de onderbroken taken naar de cmdlet Resume-Job, waarmee ze worden hervat.
Voorbeeld 5: Wachten tot taken zijn hervat
PS C:\> Resume-Job -Name WorkflowJob, InventoryWorkflow, WFTest* -Wait
Met deze opdracht wordt de parameter Wait gebruikt om Resume-Job- om alleen te retourneren nadat alle opgegeven taken zijn hervat. De parameter Wait is vooral handig in scripts die ervan uitgaan dat taken worden hervat voordat het script wordt voortgezet.
Voorbeeld 6: Een werkstroom hervatten die zichzelf onderbreekt
This code sample shows the **Suspend-Workflow** activity in a workflow.
#SampleWorkflow
Workflow Test-Suspend
{
$a = Get-Date
Suspend-Workflow
(Get-Date)- $a
}
The following command runs the Test-Suspend workflow on the Server01 computer.When you run the workflow, the workflow runs the Get-Date activity and stores the result in the $a variable. Then it runs the Suspend-Workflow activity. In response, it takes a checkpoint, suspends the workflow, and returns a workflow job object. Suspend-Workflow returns a workflow job object even if the workflow is not explicitly run as a job.
PS C:\> Test-Suspend -PSComputerName Server01
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
8 Job8 PSWorkflowJob Suspended True Server01 Test-Suspend
The following command resumes the Test-Suspend workflow in Job8. It uses the *Wait* parameter to hold the command prompt until the job is resumed.
PS C:\> Resume-Job -Name "Job8" -Wait
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
8 Job8 PSWorkflowJob Running True Server01 Test-Suspend
This command uses the **Receive-Job** cmdlet to get the results of the Test-Suspend workflow. The final command in the workflow returns a **TimeSpan** object that represents the elapsed time between the current date and time and the date and time that was saved in the $a variable before the workflow was suspended.
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
Met de cmdlet Resume-Job kunt u een werkstroomtaak hervatten die is onderbroken met behulp van de activiteit Suspend-Workflow. Deze activiteit onderbreekt een werkstroom vanuit een werkstroom. Deze is alleen geldig in werkstromen.
Zie about_Suspend-Workflow voor meer informatie over de werkstroom onderbreken.
Parameters
-Confirm
U wordt gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | SwitchParameter |
Aliassen: | cf |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Filter
Hiermee geeft u een hash-tabel met voorwaarden. Met deze cmdlet worden taken hervat die voldoen aan alle voorwaarden in de hash-tabel. Voer een hashtabel in waarin de sleutels taakeigenschappen zijn en de waarden taakeigenschapswaarden zijn.
Type: | Hashtable |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Id
Hiermee geeft u een matrix van id's op voor taken die door deze cmdlet worden hervat.
De id is een geheel getal dat de taak in de huidige sessie uniek identificeert. Het is gemakkelijker om te onthouden en te typen dan de exemplaar-id, maar het is alleen uniek in de huidige sessie. U kunt een of meer id's typen, gescheiden door komma's. Als u de id van een taak wilt vinden, voert u Get-Job-uit.
Type: | Int32[] |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-InstanceId
Hiermee geeft u een matrix op van exemplaar-id's van taken die door deze cmdlet worden hervat. De standaardwaarde is alle taken.
Een exemplaar-id is een GUID waarmee de taak op de computer uniek wordt geïdentificeerd. Als u de exemplaar-id van een taak wilt vinden, voert u Get-Job-uit.
Type: | Guid[] |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Job
Hiermee geeft u de taken die moeten worden hervat. Voer een variabele in die de taken bevat of een opdracht waarmee de taken worden ophaalt. U kunt taken ook doorsluisen naar de cmdlet Resume-Job.
Type: | Job[] |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Name
Hiermee geeft u een matrix op van beschrijvende namen van taken die door deze cmdlet worden hervat. Voer een of meer taaknamen in. Jokertekens zijn toegestaan.
Type: | String[] |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-State
Hiermee geeft u de status van taken die moeten worden hervat. De acceptabele waarden voor deze parameter zijn:
- Niet gestart
- Lopend
- Volbracht
- Mislukt
- Gestopt
- Geblokkeerd
- Latent
- Verbroken
- Opschorting
- Stoppen
Met deze cmdlet worden alleen taken in de status onderbroken hervat.
Zie JobState-opsomming in de MSDN-bibliotheek voor meer informatie over taakstatussen.
Type: | JobState |
Geaccepteerde waarden: | NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Wait
Geeft aan dat deze cmdlet de opdrachtprompt onderdrukt totdat alle taakresultaten opnieuw worden gestart. Standaard retourneert deze cmdlet onmiddellijk de beschikbare resultaten.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-WhatIf
Toont wat er zou gebeuren als de cmdlet wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliassen: | wi |
Position: | Named |
Default value: | False |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt alle soorten taken doorspezen naar deze cmdlet. Als Cv-taak een taak van een niet-ondersteund type krijgt, wordt er een afsluitfout geretourneerd.
Uitvoerwaarden
None, System.Management.Automation.Job
Met deze cmdlet worden de taken geretourneerd die worden hervat als u de parameter PassThru- gebruikt. Anders genereert deze cmdlet geen uitvoer.
Notities
- cv-taak kan alleen taken hervatten die zijn onderbroken. Als u een taak in een andere status verzendt, Cv-taak de cv-bewerking op de taak uitvoert, maar er wordt een waarschuwing gegenereerd om u te laten weten dat de taak niet kan worden hervat. Als u de waarschuwing wilt onderdrukken, gebruikt u de WarningAction algemene parameter met de waarde SilentlyContinue.
- Als een taak niet van een type is dat ondersteuning biedt voor hervatting, zoals een werkstroomtaak (PSWorkflowJob), retourneert Cv-taak een afsluitfout.
- Het mechanisme en de locatie voor het opslaan van een onderbroken taak kunnen variëren, afhankelijk van het taaktype. Onderbroken werkstroomtaken worden bijvoorbeeld standaard opgeslagen in een plat bestandsarchief, maar kunnen ook worden opgeslagen in een SQL-database.
- Wanneer u een taak hervat, verandert de taakstatus van onderbroken in Wordt uitgevoerd. Als u wilt zoeken naar de taken die worden uitgevoerd, inclusief taken die door deze cmdlet zijn hervat, gebruikt u de parameter State van de cmdlet Get-Job om taken op te halen in de status Wordt uitgevoerd.
- Sommige taaktypen hebben opties of eigenschappen die voorkomen dat Windows PowerShell de taak onderbreekt. Als pogingen om de taak te onderbreken mislukken, controleert u of de taakopties en eigenschappen het onderbreken toestaan.