RUBRIQUE about_For DESCRIPTION COURTE Décrit une commande de langage permettant d'exécuter des instructions selon un test conditionnel. DESCRIPTION LONGUE L'instruction For (également appelée " boucle For ") est une construction de langage permettant de créer une boucle qui exécute les commandes d'un bloc de commandes tant qu'une condition spécifiée prend la valeur true (vrai). Une boucle For est généralement utilisée pour parcourir un tableau de valeurs et traiter un sous-ensemble de ces valeurs. Dans la plupart des cas, pour parcourir toutes les valeurs d'un tableau, il peut s'avérer utile d'employer une instruction Foreach. Syntaxe La syntaxe de l'instruction For est présentée ci-dessous. for (<init>; <condition>; <répétition>) {<liste d'instructions>} L'espace réservé <init> représente une ou plusieurs commandes séparées par des virgules et exécutées avant le début de la boucle. La partie <init> de l'instruction est généralement utilisée pour créer et initialiser une variable avec une valeur de départ. Cette variable servira ensuite de base pour la condition à tester dans la partie suivante de l'instruction For. L'espace réservé <condition> représente la partie de l'instruction For qui se résout en valeur booléenne true ou false. Windows PowerShell évalue la condition chaque fois que la boucle For s'exécute. Si l'instruction a la valeur true, les commandes du bloc de commandes s'exécutent et l'instruction est de nouveau évaluée. Si la condition reste vraie, les commandes de la liste d'instructions s'exécutent une nouvelle fois. La boucle se répète jusqu'à ce que la condition prenne la valeur false. L'espace réservé <répétition> représente un ou plusieurs commandes, séparées par des virgules et exécutées chaque fois que la boucle se répète. Cela sert généralement à modifier une variable testée à l'intérieur de la partie <condition> de l'instruction. L'espace réservé <liste d'instructions> représente un jeu d'une ou de plusieurs commandes exécutées à chaque entrée dans la boucle ou répétition de celle-ci. Le contenu de la liste d'instructions figure entre accolades. Exemples Au minimum, une instruction For requiert les parties <init>, <condition> et <répétition> placées entre parenthèses, ainsi qu'une commande placée entre accolades dans la partie <liste d'instructions>. Notez que les exemples à venir montrent intentionnellement le code situé hors de l'instruction For. Dans les exemples ultérieurs, le code est intégré à l'instruction For. Par exemple, l'instruction For suivante affiche continuellement la valeur de la variable $i jusqu'à ce que vous sortiez manuellement de la commande en appuyant sur CTRL+C. $i = 1 for (;;){Write-Host $i} Vous pouvez ajouter des commandes supplémentaires à la liste d'instructions afin que la valeur de la variable $i soit incrémentée d'une unité à chaque exécution de la boucle, comme le montre l'exemple suivant. for (;;){$i++; Write-Host $i} Jusqu'à ce que vous sortiez de la commande en appuyant sur CTRL+C, cette instruction affichera continuellement la valeur de la variable $i à mesure qu'elle est incrémentée d'une unité à chaque exécution de la boucle. Au lieu de modifier la valeur de la variable dans la partie de l'instruction For réservée à la liste d'instructions, vous pouvez utiliser plutôt la partie <répétition> de l'instruction, comme suit : $i=1 for (;;$i++){Write-Host $i} Cette instruction continuera à se répéter indéfiniment jusqu'à ce que vous sortiez de la commande en appuyant sur CTRL+C. En définissant une condition (à l'aide de la partie <condition> de l'instruction For), vous pouvez terminer la boucle For lorsque la condition prend la valeur false. Dans l'exemple suivant, la boucle For s'exécute tant que la valeur de la variable $i est inférieure ou égale à 10. $i=1 for(;$i -le 10;$i++){Write-Host $i} Au lieu de créer et d'initialiser la variable en dehors de l'instruction For, vous pouvez effectuer cette tâche dans la boucle For en utilisant sa partie <init>. for($i=1; $i -le 10; $i++){Write-Host $i} Vous pouvez utiliser des retours chariot, au lieu de points-virgules, pour délimiter les parties <init>, <condition> et <répétition> de l'instruction For. L'exemple suivant montre la syntaxe de l'instruction For sous cette autre forme. for (<init> <condition> <répétition>){ <liste d'instructions> } Cette autre forme de l'instruction For fonctionne dans les fichiers de script et l'invite de commandes Windows PowerShell. Toutefois, il est plus facile d'utiliser l'instruction For avec des points-virgules lors de la saisie de commandes interactives à l'invite de commandes. La boucle For est plus souple que la boucle Foreach, car elle permet d'incrémenter des valeurs dans un tableau ou une collection au moyen de modèles. Dans l'exemple suivant, la variable $i est incrémentée de 2 unités dans la partie <répétition> de l'instruction For. for ($i = 0; $i -ile 20; $i += 2) {Write-Host $i} VOIR AUSSI about_Comparison_Operators about_Foreach