Dans les langages de programmation, Boucles sont des composants essentiels et sont utilisés lorsque vous souhaitez répéter du code encore et encore jusqu’à ce qu’une condition spécifiée soit remplie.

Dans Frapper scénarisation, boucles jouent à peu près le même rôle et sont utilisés pour automatiser des tâches répétitives comme dans les langages de programmation.

Dans Frapper scripts, il existe 3 types de boucles: pour la boucle, boucle whileet jusqu’à la boucle. Les trois sont utilisés pour parcourir une liste de valeurs et exécuter un ensemble donné de commandes.

Dans ce guide, nous nous concentrerons sur les Bash pour la boucle sous Linux.

Bash pour la syntaxe de la boucle

Comme mentionné précédemment, le pour la boucle itère sur une plage de valeurs et exécute un ensemble de commandes.

Publicité

Pour la boucle prend la syntaxe suivante :

for variable_name in value1 value2 value3  .. n
do
    command1
    command2
    commandn
done

Voyons maintenant quelques exemples d’utilisation de la boucle bash for.

Boucle simple pour Bash

Dans sa forme la plus simple, le Pour la boucle prend le format de base suivant. Dans cet exemple, la variable n itère sur un groupe de valeurs numériques entre accolades et affiche leurs valeurs sur stdout.

for n in {1 2 3 4 5 6 7};
do
   echo $n
done
Bash For Exemple De Boucle
Bash For Exemple De Boucle

Bash For Loop avec des plages

Dans les exemples précédents, nous avons listé explicitement les valeurs à itérer par le pour la boucle, qui fonctionne très bien. Cependant, vous ne pouvez qu’imaginer à quel point une tâche serait fastidieuse et chronophage si vous deviez parcourir, par exemple, une centaine de valeurs. Cela vous obligerait à taper toutes les valeurs de 1 à 100.

Pour résoudre ce problème, spécifiez une plage. Pour ce faire, indiquez le nombre de démarrage et d’arrêt séparés par deux points.

Dans cet exemple, 1 est la première valeur tandis que 7 est la dernière valeur de la plage.

#!/bin/bash

for n in {1..7};
do
   echo $n
done

Une fois le script shell exécuté, toutes les valeurs de la plage sont répertoriées, comme ce que nous avions dans boucles simples.

Exemple De Boucle Bash For Avec Plages
Exemple De Boucle Bash For Avec Plages

De plus, nous pouvons inclure une valeur à la fin de la plage qui va provoquer le pour la boucle pour parcourir les valeurs par étapes incrémentielles.

Le script bash suivant imprime les valeurs entre 1 et 7 avec 2 étapes incrémentielles entre les valeurs à partir de la première valeur.

#!/bin/bash

for n in {1..7..2};
do
   echo $n
done
Bash Pour Les Valeurs Incrémentées De La Boucle
Bash Pour Les Valeurs Incrémentées De La Boucle

Dans l’exemple ci-dessus, vous pouvez voir que le boucle incrémenté les valeurs à l’intérieur des accolades de 2 valeurs.

Bash For Loops avec des tableaux

Vous pouvez également parcourir facilement les valeurs définies dans un tableau à l’aide d’un Pour la boucle. Dans l’exemple suivant, le pour la boucle parcourt toutes les valeurs à l’intérieur du tableau de fruits et les imprime sur stdout.

#!/bin/bash

fruits=("blueberry" "peach" "mango" "pineapple" "papaya") 

for n in ${fruits[@]}; 
do
    echo $n
done
Bash For Exemple De Tableau De Boucles
Bash For Exemple De Tableau De Boucles

La @ l’opérateur accède ou cible tous les éléments. Cela permet d’itérer sur tous les éléments un par un.

De plus, vous pouvez accéder à un seul élément en spécifiant sa position dans le tableau.

Par exemple pour accéder au «mangue« , remplacer l’élément @ opérateur avec la position de l’élément dans le tableau (le premier élément commence à 0, donc dans ce cas, « mangue» sera noté 2).

Voici à quoi ressemble la boucle for.

#!/bin/bash

fruits=("blueberry" "peach" "mango" "pineapple" "papaya") 

for n in ${fruits[2]}; 
do
    echo $n
done
Bash For Loops Avec Des Éléments De Tableau
Bash For Loops Avec Des Éléments De Tableau

Boucles For de style Bash C

Vous pouvez utiliser des variables à l’intérieur des boucles pour itérer sur une plage d’éléments. C’est ici que Style C pour les boucles entrer. L’exemple suivant illustre un Boucle for de style C qui imprime une liste de valeurs numériques de 1 à 7.

#!/bin/bash

n=7
for (( n=1 ; n<=$n ; n++ )); 
do
    echo $n
done
Exemple De Boucles For De Style Bash C
Exemple De Boucles For De Style Bash C

Boucles For de style Bash C avec instructions conditionnelles

Vous pouvez inclure des instructions conditionnelles à l’intérieur Style C pour les boucles. Dans l’exemple suivant, nous avons inclus une instruction if-else qui vérifie et imprime les nombres pairs et impairs entre 1 et 7.

#!/bin/bash

for (( n=1; n<=7; n++ ))
do  
    # Check if the number is even or not
    if (( $n%2==0 ))
    then
        echo "$n is even"
    else
        echo "$n is odd"
    fi  
done
Exemple D'Instructions Conditionnelles De Boucles For De Style Bash C
Exemple D&Rsquo;Instructions Conditionnelles De Boucles For De Style Bash C

Utilisez l’instruction ‘Continue’ avec Bash For Loop

La ‘Continuez‘ est une commande intégrée qui contrôle l’exécution d’un script. Outre les scripts bash, il est également utilisé dans des langages de programmation tels que Python et Java.

La continuer la déclaration arrête l’itération en cours à l’intérieur d’un boucle lorsqu’une condition spécifique est remplie, puis reprend l’itération.

Prendre en compte pour la boucle indiqué ci-dessous.

#!/bin/bash
for n in {1..10}
do
        if [[ $n -eq '6' ]]
        then
              echo "Target $n has been reached"
              continue
        fi
        echo $n
done
Exemple D'Instruction Bash For Loop Continue
Exemple D&Rsquo;Instruction Bash For Loop Continue

Voici ce que fait le code :

  • Ligne 2: marque le début de la boucle for et itère la variable n de 1 à 10.
  • Ligne 4: Vérifie la valeur de n et si la variable est égale à 6, le script renvoie un message vers stdout et redémarre la boucle à la prochaine itération de la ligne 2.
  • Ligne 9: Affiche les valeurs à l’écran uniquement si la condition de la ligne 4 est fausse.

Voici la sortie attendue après l’exécution du script.

Sortie De L'Instruction Bash For Loop Continue
Sortie De L&Rsquo;Instruction Bash For Loop Continue

Utilisez l’instruction ‘break’ avec Bash For Loop

La ‘Pause’ L’instruction, comme son nom l’indique, arrête ou termine l’itération lorsqu’une condition est remplie.

Prendre en compte Pour la boucle dessous.

#!/bin/bash
for n in {1..10}
do
        if [[ $n -eq '6' ]]
        then
                echo "Target $n has been reached"
                break
        fi
        echo $n
done
echo "All done"
Bash Pour L'Instruction De Rupture De Boucle
Bash Pour L&Rsquo;Instruction De Rupture De Boucle

Voici ce que fait le code :

  • Ligne 2: marque le début de la boucle for et itère la variable n de 1 à 10.
  • Ligne 4: Vérifie la valeur de n et si la variable est égale à 6, le script renvoie un message vers stdout et stoppe l’itération.
  • Ligne 9: Affiche les nombres à l’écran uniquement si la condition de la ligne 4 est fausse.

À partir de la sortie, vous pouvez voir que la boucle s’arrête une fois que la variable remplit la condition de la boucle.

Bash Pour La Sortie De L'Instruction De Rupture De Boucle
Bash Pour La Sortie De L&Rsquo;Instruction De Rupture De Boucle
Conclusion

C’était un tutoriel sur Bash pour les boucles. Nous espérons que vous avez trouvé cela perspicace. N’hésitez pas à peser avec vos commentaires.

Si vous appréciez ce que nous faisons ici sur TecMint, vous devriez considérer :

TecMint est le site communautaire à la croissance la plus rapide et le plus fiable pour tout type d’articles, de guides et de livres Linux sur le Web. Des millions de personnes visitent TecMint ! pour rechercher ou parcourir les milliers d’articles publiés accessibles GRATUITEMENT à tous.

Si vous aimez ce que vous lisez, pensez à nous acheter un café (ou 2) en signe d’appréciation.

Soutenez-Nous

Nous sommes reconnaissants pour votre soutien sans fin.

Rate this post
Publicité
Article précédentHuit morts et quatre disparus après que des torrents de boue ont balayé la ville italienne
Article suivantTop 5 des portefeuilles de crypto-monnaie que vous pouvez utiliser en 2022
Avatar De Violette Laurent
Violette Laurent est une blogueuse tech nantaise diplômée en communication de masse et douée pour l'écriture. Elle est la rédactrice en chef de fr.techtribune.net. Les sujets de prédilection de Violette sont la technologie et la cryptographie. Elle est également une grande fan d'Anime et de Manga.

1 COMMENTAIRE

  1. Bonjour et merci de partager vos connaissances
    #!/bin/bash
    n=7
    for (( n=1 ; n<=$n ; n++ ));
    do
    echo $n
    done
    mais cette boucle ne s'arrête jamais , pourquoi ? Merci

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici