Partager via


about_Sequence

Description courte

Décrit le Sequence mot clé qui exécute les activités sélectionnées de manière séquentielle.

Description longue

Le Sequence mot clé exécute les activités de flux de travail sélectionnées de manière séquentielle. Les activités de flux de travail s’exécutent dans l’ordre dans lequel elles apparaissent et ne s’exécutent pas simultanément. Le Sequence mot clé est valide uniquement dans un flux de travail PowerShell.

Le Sequence mot clé est utilisé dans un Parallel bloc de script pour exécuter des commandes sélectionnées de manière séquentielle.

Étant donné que les activités de flux de travail s’exécutent de manière séquentielle par défaut, le Sequence mot clé est uniquement efficace dans un Parallel bloc de script. Si le Sequence mot clé n’est pas inclus dans un Parallel bloc de script, il est valide mais inefficace.

Le Sequence bloc de script vous permet d’exécuter plus de commandes en parallèle en vous permettant d’exécuter des commandes dépendantes de manière séquentielle.

Syntaxe

Flux de travail à l’aide de Sequence

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

Flux de travail à l’aide de Parallel and Sequence

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

Description détaillée

Les commandes d’un Parallel bloc de script peuvent s’exécuter simultanément. L'ordre dans lequel elles s'exécutent n'est pas déterminé. Cette fonctionnalité améliore les performances d’un flux de travail de script.

Vous pouvez utiliser un Sequence bloc de script pour exécuter des activités sélectionnées de manière séquentielle, même si les activités apparaissent dans un Parallel bloc de script.

Les activités d’un Sequence bloc de script s’exécutent consécutivement dans l’ordre dans lequel elles sont répertoriées. Une activité dans un Sequence bloc de script démarre uniquement une fois l’activité précédente terminée.

Toutefois, lorsque le bloc de Sequence script apparaît dans un Parallel bloc de script, l’ordre dans lequel le Sequence bloc de script s’exécute n’est pas déterminé. Il peut s’exécuter avant, après ou simultané avec d’autres activités dans le bloc de Parallel script.

Par exemple, le flux de travail suivant inclut un Parallel bloc de script qui exécute des activités qui obtiennent des processus et des services sur l’ordinateur. Le Parallel bloc de script contient un Sequence bloc de script qui obtient des informations d’un fichier et utilise les informations comme entrée dans un script.

Les Get-Processcommandes , Get-Serviceet les commandes liées aux correctifs logiciels sont indépendantes les unes des autres. Les commandes peuvent s’exécuter simultanément ou dans n’importe quel ordre. Toutefois, la commande qui obtient les informations du correctif logiciel doit s’exécuter avant la commande qui l’utilise.

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}
        }
    }
}

Voir aussi