about_Sequence

Rövid leírás

Sequence A kijelölt tevékenységeket egymás után futtató kulcsszót ismerteti.

Hosszú leírás

A Sequence kulcsszó egymás után futtatja a kijelölt munkafolyamat-tevékenységeket. A munkafolyamat-tevékenységek a megjelenésük sorrendjében futnak, és nem futnak párhuzamosan. A Sequence kulcsszó csak PowerShell-munkafolyamatokban érvényes.

A Sequence kulcsszó egy Parallel szkriptblokkban a kijelölt parancsok egymás utáni futtatására szolgál.

Mivel a munkafolyamat-tevékenységek alapértelmezés szerint szekvenciálisan futnak, a Sequence kulcsszó csak egy Parallel szkriptblokkban érvényes. Ha a Sequence kulcsszó nem szerepel egy Parallel szkriptblokkban, akkor érvényes, de hatástalan.

A Sequence szkriptblokk lehetővé teszi több parancs párhuzamos futtatását, lehetővé téve a függő parancsok egymás utáni futtatását.

Syntax

Munkafolyamat a Sequence használatával

workflow <Verb-Noun>
{
    Sequence
    {
        [<Activity>]
        [<Activity>]
        # ...
    }
}

Munkafolyamat párhuzamos és szekvencia használatával

workflow <Verb-Noun>
{
    Parallel
    {
        [<Activity>]
        Sequence
        {
            [<Activity>]
            [<Activity>]
            # ...
        }
    }
}

Részletes leírás

A szkriptblokkban lévő Parallel parancsok egyidejűleg is futtathatók. A futtatás sorrendjét a rendszer nem határozza meg. Ez a funkció javítja a szkript-munkafolyamatok teljesítményét.

Szkriptblokk használatával Sequence egymás után futtathatja a kijelölt tevékenységeket, még akkor is, ha a tevékenységek egy Parallel szkriptblokkban jelennek meg.

A szkriptblokkok Sequence tevékenységei egymás után futnak a lista szerinti sorrendben. A szkriptblokkokban lévő Sequence tevékenységek csak az előző tevékenység befejeződése után kezdődnek.

Ha azonban a Sequence szkriptblokk egy Parallel szkriptblokkban jelenik meg, a szkriptblokk futtatásának Sequence sorrendje nem lesz meghatározva. Előfordulhat, hogy a szkriptblokk más tevékenységei Parallel előtt, után vagy egyidejűleg fut.

A következő munkafolyamat például egy Parallel szkriptblokkot tartalmaz, amely folyamatokat és szolgáltatásokat lekérő tevékenységeket futtat a számítógépen. A Parallel szkriptblokk olyan szkriptblokkot Sequence tartalmaz, amely információkat kap egy fájltól, és az adatokat egy szkript bemeneteként használja.

A Get-Process, Get-Serviceés a gyorsjavítással kapcsolatos parancsok egymástól függetlenek. A parancsok egyidejűleg vagy bármilyen sorrendben futtathatók. A gyorsjavítási adatokat lekérő parancsnak azonban az azt használó parancs előtt kell futnia.

workflow Test-Workflow
{
    Parallel
    {
    Get-Process
    Get-Service

    Sequence
    {
        $Hotfix = Get-Content 'D:\HotFixes\Required.txt'
        Foreach ($h in $Hotfix) {'D:\Scripts\Verify-Hotfix' -Hotfix $h}
        }
    }
}

Lásd még