Attend l'arrêt des processus avant d'accepter une autre entrée.

Syntaxe

Wait-Process [-Id] <Int32[]> [[-Timeout] <int>] [<CommonParameters>]

Wait-Process -InputObject <Process[]> [[-Timeout] <int>] [<CommonParameters>]

Wait-Process [-Name] <string[]> [[-Timeout] <int>] [<CommonParameters>]

Description

L'applet de commande Wait-Process attend l'arrêt d'un ou de plusieurs processus en cours avant d'accepter une entrée. Dans la console Windows PowerShell, cette applet de commande supprime l'invite de commandes tant que les processus ne se sont pas arrêtés. Vous pouvez spécifier un processus par son nom ou son identificateur de processus (PID) ou diriger un objet processus vers Wait-Process.

Wait-Process fonctionne uniquement sur les processus qui s'exécutent sur l'ordinateur local.

Paramètres

-Id <Int32[]>

Spécifie l'identificateur des processus. Lorsque vous spécifiez plusieurs identificateurs, séparez-les à l'aide de virgules. Pour rechercher le PID d'un processus, tapez « get-process ». Le nom de paramètre (« Id ») est facultatif.

Obligatoire ?

true

Position ?

1

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByPropertyName)

Accepter les caractères génériques ?

false

-InputObject <Process[]>

Spécifie les processus en envoyant des objets processus. Entrez une variable qui contient les objets processus ou tapez une commande ou une expression qui obtient les objets processus (commande Get-Process, par exemple).

Obligatoire ?

true

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByValue)

Accepter les caractères génériques ?

false

-Name <string[]>

Spécifie le nom des processus. Pour spécifier plusieurs noms, séparez-les à l'aide de virgules.

Obligatoire ?

true

Position ?

1

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByPropertyName)

Accepter les caractères génériques ?

false

-Timeout <int>

Détermine le délai d'attente maximal (en secondes) de Wait-Process jusqu'à ce que les processus spécifiés s'arrêtent. Lorsque ce délai expire, la commande affiche une erreur sans fin d'exécution qui répertorie les processus dont l'exécution se poursuit et elle met un terme à l'attente.

Obligatoire ?

false

Position ?

2

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

<CommonParameters>

Cette applet de commande prend en charge les paramètres courants : -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer et -OutVariable. Pour plus d'informations, consultez about_Commonparameters.

Entrées et sorties

Le type d'entrée est le type des objets que vous pouvez diriger vers l'applet de commande. Le type de retour est le type des objets que l'applet de commande retourne.

Entrées

System.Diagnostics.Process

Vous pouvez diriger un objet processus vers Wait-Process.

Sorties

None

Cette applet de commande ne génère aucune sortie.

Remarques

Cette applet de commande utilise la méthode WaitForExit de la classe System.Diagnostics.Process. Pour plus d'informations sur cette méthode, consultez le kit de développement Microsoft .NET Framework SDK.

Exemple 1

C:\PS>$nid = (get-process notepad).id

C:\PS> stop-process -id $nid

C:\PS> wait-process -id $nid

Description
-----------
Ces commandes arrêtent le processus Notepad, puis attendent l'arrêt du processus avant de passer à la commande suivante.

La première commande utilise l'applet de commande Get-Process pour obtenir l'ID du processus Notepad. Elle l'enregistre dans la variable $nid.

La deuxième commande utilise l'applet de commande Stop-Process pour arrêter le processus portant l'ID enregistré dans $nid.

La troisième commande utilise l'applet de commande Wait-Process pour attendre jusqu'à ce que le processus Notepad soit arrêté. Elle utilise le paramètre ID de Wait-Process pour identifier le processus.






Exemple 2

C:\PS>$p = get-process notepad

C:\PS> wait-process -id $p.id

C:\PS> wait-process -name notepad

C:\PS> wait-process -inputobject $p

Description
-----------
Ces commandes indiquent trois méthodes différentes pour spécifier un processus à l'applet de commande Wait-Process. La première commande obtient le processus Notepad et l'enregistre dans la variable $p.

La deuxième commande utilise le paramètre ID, la troisième commande utilise le paramètre Name et la quatrième commande utilise le paramètre InputObject. 

Ces commandes obtiennent les mêmes résultats et peuvent être utilisées indifféremment.






Exemple 3

C:\PS>wait-process -name outlook, winword -timeout 30

Description
-----------
Cette commande attend l'arrêt des processus Outlook et Winword pendant 30 secondes. Si les deux processus ne se sont pas arrêtés, l'applet de commande affiche une erreur sans fin d'exécution et affiche l'invite de commandes.






Voir aussi




Table des matières