Une boucle for est l'une des principales instructions dans divers langages de programmation et aide beaucoup à gérer votre VPS. Ici, nous expliquerons comment il est utilisé dans le langage de programmation bash - d'où le nom "bash for loop". Préparez-vous à ajouter un nouvel outil à votre arsenal de développeur !
Une boucle for est une instruction d'itération, ce qui signifie que vous pouvez exécuter du code à plusieurs reprises. Disons que vous voulez exécuter une instruction 5 fois. Au lieu d'écrire cinq codes distincts, vous pouvez simplement écrire une syntaxe de boucle for une seule fois. Explorons plus en profondeur, d'accord ?
Syntaxe Bash For Loop
Fondamentalement, la syntaxe de boucle for la plus simple répète l'occurrence d'un ensemble d'une variable. La séquence bash ressemble généralement à ceci :
for VARIABLE in 1 2 3 4 5 .. N Perform the below command: command1 command2 commandN done
Dans le monde réel, cette syntaxe ressemblerait à l'exemple ci-dessous :
#!/bin/bash for i in 1 2 3 4 5 do echo "Hello $i" done
L'exécution du fichier bash entraînera la séquence suivante :
Hello 1 Hello 2 Hello 3 Hello 4 Hello 5
Inspectons chaque élément :
- #!/bin/bash– montre que le code est un script bash
- je – est un espace réservé pour une variable. Pendant ce temps, $i est la valeur individuelle de la variable. Vous pouvez également l'écrire sous la forme c/$c ou par tout autre nom
- dans – sépare la variable et les éléments qui suivent
- 1 2 3 4 5 – est un exemple d'éléments sur lesquels vous souhaitez exécuter l'instruction
- faire – est le mot-clé qui démarre les boucles. Il exécutera alors l'instruction n fois, n étant le nombre total d'éléments. Ici, la valeur de n est 5
- écho "Bonjour :$i" – est le code que nous répéterons n fois. N'oubliez pas que les guillemets transforment tout ce qu'ils contiennent en une seule variable.
- terminé – arrête la boucle
Vous pouvez écrire le code différemment selon la version de bash que vous utilisez :
La version 3.0+ de Bash peut raccourcir la plage avec ".. ”.
#!/bin/bash for i in {1..5} do echo "Hai $i" done
Bash version 4.0+ vous permet d'utiliser le {START..END..INCREMENT} syntaxe.
#!/bin/bash for i in {0..8..2} do echo "Hai $i" done
Le résultat de cette séquence bash ressemblera à ceci :
Hai 0 Hai 2 Hai 4 Hai 6 Hai 8
Les deux autres syntaxes de commande de boucle courantes sont les suivantes :
for VARIABLE in file1 file2 file3 do command1 on $VARIABLE command2 commandN done
Et ceci :
for OUTPUT in $(Linux-Or-Unix-Command-Here) do command1 on $OUTPUT command2 on $OUTPUT commandN done
Exemples de boucle pour bash
Vous pouvez mettre à jour la syntaxe pour effectuer plusieurs opérations. N'oubliez pas qu'avant de faire quoi que ce soit, vous devrez vous connecter à votre VPS. Si vous rencontrez des problèmes, ce didacticiel Putty SSH vous mettra sur la bonne voie. En attendant, si vous rencontrez des problèmes avec bash, vous devriez consulter notre guide de la fonction bash de base. N'oubliez pas que les fonctions bash doivent être dans un .sh dossier. Pour en créer un, exécutez ce qui suit dans la ligne de commande :
vim NameOfFile.sh
Cela créera un fichier .sh et l'ouvrira dans l'éditeur VIM. Vous pouvez en savoir plus dans l'article sur la fonction bash de base mentionné précédemment.
Utilisation de Bash For Loop pour créer une boucle infinie
Une fois activée, cette boucle continuera à exécuter le code jusqu'à ce que vous l'arrêtiez en appuyant sur Ctrl + C. Dans ce cas, le terme "Hello World" continuera à réapparaître de lui-même.
#!/bin/bash for (( ; ; )) do echo "Hello World!" done
Utilisation de Bash For Loop pour créer une boucle à trois expressions
La boucle est composée de trois expressions d'écriture - un initialiseur (EXP1 ), une condition (EXP2 ) et une expression de comptage (EXP3 ). Parfois, les gens l'appellent la boucle de style C en raison de la ressemblance étroite dans la structure du code. La syntaxe de cette boucle est la suivante :
for (( EXP1; EXP2; EXP3 )) do command1 command2 command3 done
Voici un exemple de commande de boucle que vous pouvez essayer vous-même :
#!/bin/bash for (( c=1; c<=5; c++ )) do echo "Hai $c" done
Le code dit que la valeur initiale est 1 . La boucle sera exécutée, tant que la condition dans EXP2 est vrai, ce qui signifie qu'il ne doit pas être supérieur à 5 . De plus, le ++ signe indique que l'incrément est 1 . Il répétera ensuite la boucle une par une à partir de la valeur initiale. Résultat :
Hai 1 Hai 2 Hai 3 Hai 4 Hai 5
Utilisation de Bash for Loop pour créer la boucle Skip and Continue
L'instruction continue saute la boucle pour la valeur indiquée et continue la boucle par la suite. Voici à quoi ressemblerait la syntaxe :
for I in 1 2 3 4 5 do if [condition] then continue #Go to next iteration of I in the loop and skip statements3 fi statement done
En suivant la syntaxe, nous pouvons créer une commande bash skip and continue loop comme celle-ci :
for i in {1..5} do if [[ "$i" == '4' ]] then continue fi echo "Hai $i4" done
La sortie de cette séquence bash serait :
Hai 1 Hai 2 Hai 3 Hai 5
Depuis la valeur 4 correspondait à l'instruction continue, la boucle n'a pas exécuté le code et est passée à la valeur suivante, qui est 5 .
Utilisation de Bash for Loop pour créer une sortie conditionnelle avec Break Loop
La boucle vous permet d'arrêter l'opération si elle répond à la condition indiquée. Cela peut être suivi d'une autre instruction. Voici la syntaxe :
for I in 1 2 3 4 5 do if [condition] then break fi statement done
Lors de l'utilisation de cette fonction, notre commande de boucle ressemblerait à ceci :
for city in Manila Bangkok Jakarta Kuala Lumpur do if [[ "$city" == 'Jakarta' ]]; then break fi echo "city: $city" done echo 'Yes, that’s all!'
Et le résultat :
city: Manila city: Bangkok Yes, that’s all!
L'instruction indique à la boucle d'interrompre l'opération une fois que la condition est vraie (trouver le terme Jakarta ). Il exécutera ensuite le deuxième code, qui imprime un texte qui dit Oui, c'est tout.
Conclusion
Bash for loop est idéal pour automatiser les tâches répétitives. Outre les exemples de base ci-dessus, vous pouvez faire beaucoup plus. Par exemple, vous pouvez suivre les fichiers et effectuer de nombreuses autres tâches. La liste est longue !
Tout ce que vous avez à faire est d'écrire les commandes de boucle. Cela peut être une courbe d'apprentissage, mais la lecture de cette introduction est un bon début. La pratique rend toujours parfait! Bonne chance !