Megosztás a következőn keresztül:


Suspend-Job

Ideiglenesen leállítja a munkafolyamat-feladatokat.

Syntax

SessionIdParameterSet (Alapértelmezett)

Suspend-Job
    [-Id] <Int32[]>
    [-Force]
    [-Wait]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

JobParameterSet

Suspend-Job
    [-Job] <Job[]>
    [-Force]
    [-Wait]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

FilterParameterSet

Suspend-Job
    [-Filter] <Hashtable>
    [-Force]
    [-Wait]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

StateParameterSet

Suspend-Job
    [-State] <JobState>
    [-Force]
    [-Wait]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

InstanceIdParameterSet

Suspend-Job
    [-InstanceId] <Guid[]>
    [-Force]
    [-Wait]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

NameParameterSet

Suspend-Job
    [-Name] <String[]>
    [-Force]
    [-Wait]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

A Suspend-Job parancsmag felfüggeszti a munkafolyamat-feladatokat. A felfüggesztés azt jelenti, hogy ideiglenesen megszakít vagy szüneteltet egy munkafolyamat-feladatot. Ez a parancsmag lehetővé teszi a munkafolyamatokat futtató felhasználók számára a munkafolyamat felfüggesztését. Kiegészíti a Munkafolyamat felfüggesztésehttps://go.microsoft.com/fwlink/?LinkId=267141 tevékenységet, amely a munkafolyamat egyik parancsa, amely felfüggeszti a munkafolyamatot.

A Suspend-Job parancsmag csak munkafolyamat-feladatokon működik. Nem működik szabványos háttérfeladatokon, például a Start-Job parancsmaggal indított feladatokon.

Munkafolyamat-feladat azonosításához keresse meg a PSWorkflowJob értékét a feladat PSJobTypeName tulajdonságában. Annak megállapításához, hogy egy adott egyéni feladattípus támogatja-e a Feladat felfüggesztése parancsmagot, tekintse meg az egyéni feladattípus súgótémaköröket.

Amikor felfüggeszt egy munkafolyamat-feladatot, a munkafolyamat-feladat a következő ellenőrzőpontra fut, felfüggeszti és azonnal visszaad egy munkafolyamat-feladatobjektumot. Ha meg szeretné várni, hogy a felfüggesztés befejeződjön a feladat lekérése előtt, használja a Suspend-Job Wait paraméterét vagy a Wait-Job parancsmagot. A munkafolyamat-feladat felfüggesztése esetén a feladat State tulajdonságának értéke fel van függesztve.

A helyes felfüggesztés ellenőrzőpontokra támaszkodik. A rendszer az aktuális feladat állapotát, metaadatait és kimenetét az ellenőrzőpontba menti, így a munkafolyamat-feladat állapot- vagy adatvesztés nélkül folytatható. Ha a munkafolyamat-feladat nem rendelkezik ellenőrzőpontokkal, nem függeszthető fel megfelelően. Ha ellenőrzőpontokat szeretne hozzáadni egy futó munkafolyamathoz, használja a PSPersist munkafolyamat gyakori paraméterét. A Kényszerítse paraméterrel azonnal felfüggesztheti a munkafolyamat-feladatokat, és felfüggeszthet egy olyan munkafolyamat-feladatot, amely nem rendelkezik ellenőrzőpontokkal, de a művelet állapot- és adatvesztést okozhat.

Mielőtt egy feladatparancsmagot használ egy egyéni feladattípushoz, például egy munkafolyamat-feladathoz (PSWorkflowJob) importálja az egyéni feladattípust támogató modult, akár a Import-Module parancsmag használatával, akár a modulban lévő parancsmag használatával.

Ezt a parancsmagot a Windows PowerShell 3.0-ban vezettük be.

Példák

1. példa: Munkafolyamat-feladat felfüggesztése név szerint

The first command creates the Get-SystemLog workflow. The workflow uses the CheckPoint-Workflow activity to define a checkpoint in the workflow.
#Sample WorkflowWorkflow Get-SystemLog
{
    $Events = Get-WinEvent -LogName System
    CheckPoint-Workflow
    InlineScript {\\Server01\Scripts\Analyze-SystemEvents.ps1 -Events $Events}
}

The second command uses the *AsJob* parameter that is common to all workflows to run the Get-SystemLog workflow as a background job. The command uses the *JobName* workflow common parameter to specify a friendly name for the workflow job.
PS C:\> Get-SystemLog -AsJob -JobName "Get-SystemLogJob"

The third command uses the **Get-Job** cmdlet to get the Get-SystemLogJob workflow job. The output shows that the value of the **PSJobTypeName** property is PSWorkflowJob.
PS C:\> Get-Job -Name Get-SystemLogJob
Id     Name              PSJobTypeName   State       HasMoreData     Location   Command
--     ----              -------------   -----       -----------     --------   -------
4      Get-SystemLogJob  PSWorkflowJob   Running     True            localhost   Get-SystemLog

The fourth command uses the **Suspend-Job** cmdlet to suspend the Get-SystemLogJob job. The job runs to the checkpoint and then suspends.
PS C:\> Suspend-Job -Name Get-SystemLogJob
Id     Name              PSJobTypeName   State       HasMoreData     Location   Command
--     ----              -------------   -----       -----------     --------   -------
4      Get-SystemLogJob  PSWorkflowJob   Suspended   True            localhost   Get-SystemLog

Ez a példa bemutatja, hogyan függeszthet fel munkafolyamat-feladatokat.

2. példa: Munkafolyamat-feladat felfüggesztése és folytatása

The first command suspends the LogWorkflowJob job.The command returns immediately. The output shows that the workflow job is still running, even though it is being suspended.
PS C:\> Suspend-Job -Name LogWorkflowJob
Id     Name          PSJobTypeName      State         HasMoreData     Location             Command
--     ----          -------------      -----         -----------     --------             -------
67     LogflowJob    PSWorkflowJob      Running       True            localhost            LogWorkflow

The second command uses the **Get-Job** cmdlet to get the LogWorkflowJob job. The output shows that the workflow job suspended successfully.
PS C:\> Get-Job -Name LogWorkflowJob
Id     Name          PSJobTypeName      State         HasMoreData     Location             Command
--     ----          -------------      -----         -----------     --------             -------
67     LogflowJob    PSWorkflowJob      Suspended     True            localhost            LogWorkflow

The third command uses the **Get-Job** cmdlet to get the LogWorkflowJob job and the Resume-Job cmdlet to resume it. The output shows that the workflow job resumed successfully and is now running.
PS C:\> Get-Job -Name LogWorkflowJob | Resume-Job
Id     Name          PSJobTypeName      State         HasMoreData     Location             Command
--     ----          -------------      -----         -----------     --------             -------
67     LogflowJob    PSWorkflowJob      Running       True            localhost            LogWorkflow

Ez a példa bemutatja, hogyan függeszthet fel és folytathat munkafolyamat-feladatokat.

3. példa: Munkafolyamat-feladat felfüggesztése távoli számítógépen

PS C:\> Invoke-Command -ComputerName Srv01 -Scriptblock {Suspend-Job -Filter @{CustomID="031589"}

Ez a parancs a Invoke-Command parancsmaggal függeszt fel egy munkafolyamat-feladatot az Srv01 távoli számítógépen. A Szűrő paraméter értéke egy kivonattábla, amely egy CustomID-értéket határoz meg. Ez a CustomID a feladatok metaadatai (PSPrivateMetadata).

4. példa: Várakozás a munkafolyamat-feladat felfüggesztésére

PS C:\> Suspend-Job VersionCheck -Wait
Id     Name          PSJobTypeName      State         HasMoreData     Location             Command
--     ----          -------------      -----         -----------     --------             -------
 5     VersionCheck  PSWorkflowJob      Suspended     True            localhost            LogWorkflow

Ez a parancs felfüggeszti a VersionCheck munkafolyamat-feladatot. A parancs a Wait paraméter használatával várja meg a munkafolyamat-feladat felfüggesztését. Amikor a munkafolyamat-feladat a következő ellenőrzőpontra fut, és fel van függesztve, a parancs befejeződik, és visszaadja a feladatobjektumot.

5. példa: Munkafolyamat-feladat felfüggesztése

PS C:\> Suspend-Job Maintenance -Force

Ez a parancs kényszerítve függeszti fel a karbantartási munkafolyamat-feladatot. A Karbantartási feladat nem rendelkezik ellenőrzőpontokkal. Nem függeszthető fel megfelelően, és lehet, hogy nem megfelelően folytatódik.

Paraméterek

-Confirm

Megerősítést kér a parancsmag futtatása előtt.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Cf

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Filter

A feltételek kivonattábláját adja meg. Ez a parancsmag felfüggeszti az összes feltételnek megfelelő feladatokat. Adjon meg egy kivonattáblát, amelyben a kulcsok feladattulajdonságok, az értékek pedig a feladattulajdonságok értékei.

Paramétertulajdonságok

Típus:Hashtable
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

FilterParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Force

A munkafolyamat-feladat azonnali felfüggesztése. Ez a művelet állapot- és adatvesztést okozhat.

Alapértelmezés szerint a Feladat felfüggesztése lehetővé teszi a munkafolyamat-feladat futtatását a következő ellenőrzőpontig, majd felfüggeszti azt. Ezzel a paraméterel is felfüggesztheti az ellenőrzőpontokkal nem rendelkező munkafolyamat-feladatokat.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:F

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Id

Megadja a parancsmag által felfüggesztett feladatok azonosítóit.

Az azonosító egy egész szám, amely egyedileg azonosítja a feladatot az aktuális munkamenetben. Egyszerűbb megjegyezni és begépelni, mint a példányazonosítót, de csak az aktuális munkamenetben egyedi. Beírhat egy vagy több azonosítót vesszővel elválasztva. Egy feladat azonosítójának megkereséséhez használja a Get-Job parancsmagot.

Paramétertulajdonságok

Típus:

Int32[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

SessionIdParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-InstanceId

Megadja a parancsmag által felfüggesztett feladatok példányazonosítóit. Az alapértelmezett beállítás az összes feladat.

A példányazonosító egy GUID, amely egyedileg azonosítja a feladatot a számítógépen. Egy feladat példányazonosítójának megkereséséhez használja a Feladat lekérése.

Paramétertulajdonságok

Típus:

Guid[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

InstanceIdParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Job

Megadja a parancsmag által leállított munkafolyamat-feladatokat. Adjon meg egy változót, amely tartalmazza a munkafolyamat-feladatokat vagy a munkafolyamat-feladatokat lekérő parancsot. A munkafolyamat-feladatokat a Suspend-Job parancsmagra is átirányíthatja.

Paramétertulajdonságok

Típus:

Job[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

JobParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:True
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Name

Azoknak a feladatoknak a rövid nevét adja meg, amelyeket a parancsmag felfüggeszt. Adjon meg egy vagy több munkafolyamat-feladatnevet. A helyettesítő karakterek támogatottak.

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

NameParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-State

Munka állapotát adja meg. Ez a parancsmag csak a megadott állapotú feladatokat állítja le. A paraméter elfogadható értékei a következők:

  • Még nem kezdődött el
  • Futás
  • Befejeződött
  • Sikertelen
  • Megállt
  • Letiltott
  • Felfüggesztett
  • Szétkapcsolva
  • Felfüggesztéséről
  • Megállás

Suspend-Job csak a munkafolyamat-feladatokat függeszti fel a Futó állapotban.

További információ a feladatállapotokról: JobState Enumeration az MSDN-kódtárban.

Paramétertulajdonságok

Típus:JobState
Alapértelmezett érték:None
Elfogadott értékek:NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

StateParameterSet
Position:0
Kötelező:True
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:True
Fennmaradó argumentumokból származó érték:False

-Wait

Azt jelzi, hogy ez a parancsmag mindaddig letiltja a parancssort, amíg a munkafolyamat-feladat fel nem függesztett állapotban van. Alapértelmezés szerint a Felfüggesztési feladat azonnal visszatér, még akkor is, ha a munkafolyamat-feladat még nincs felfüggesztett állapotban.

A Wait paraméter egyenértékű egy Suspend-Job parancsnak a Wait-Job parancsmaggal való futtatásával.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-WhatIf

Megjeleníti, mi történne, ha a parancsmag futna. A parancsmag nem fut.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
Támogatja a helyettesítő karaktereket:False
DontShow:False
Aliasok:Wi

Paraméterkészletek

(All)
Position:Named
Kötelező:False
Folyamatból származó érték:False
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

CommonParameters

Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.

Bevitelek

Job

Ehhez a parancsmaghoz minden típusú feladatot be lehet csövezni. Ha azonban Suspend-Job nem támogatott típusú feladatot kap, az egy végződési hibát ad vissza.

Kimenetek

Job

Ez a parancsmag visszaadja a felfüggesztett feladatokat.

Jegyzetek

  • A felfüggesztett feladatok mentésének mechanizmusa és helye a feladat típusától függően változhat. A felfüggesztett munkafolyamat-feladatok például alapértelmezés szerint egy egyszerű fájltárolóba vannak mentve, de egy adatbázisban is menthetők.

  • Ha olyan munkafolyamat-feladatot küld el, amely nem Fut állapotban van, Feladat felfüggesztése figyelmeztető üzenet jelenik meg. A figyelmeztetés letiltásához használja a WarningAction a SilentlyContinue értékkel rendelkező gyakori paramétert.

    Ha egy feladat nem olyan típusú, amely támogatja a felfüggesztést, Felfüggesztési feladat végződési hibát ad vissza.

  • A felfüggesztett munkafolyamat-feladatok megkereséséhez , beleértve a parancsmag által felfüggesztett feladatokat is, használja a Get-Job parancsmag Állapot paraméterét a munkafolyamat-feladatok felfüggesztett állapotban való lekéréséhez.

  • Egyes feladattípusok olyan beállításokkal vagy tulajdonságokkal rendelkeznek, amelyek megakadályozzák, hogy a Windows PowerShell felfüggesztse a feladatot. Ha nem sikerül felfüggeszteni a feladatot, ellenőrizze, hogy a feladat beállításai és tulajdonságai engedélyezik-e a felfüggesztést.