Émuler la boucle Do-While dans Bash

Nilesh Katuwal 30 janvier 2023
  1. Syntaxe de base de la boucle do-while dans Bash
  2. La déclaration break dans Bash
  3. l’instruction continue en Bash
Émuler la boucle Do-While dans Bash

La boucle est une idée fondamentale en programmation qui sera très utile dans les tâches multitâches. Nous pouvons utiliser de nombreuses fonctions telles que for, while et until pour boucler dans les scripts bash.

Dans cette leçon, nous verrons comment utiliser la boucle do-while dans bash.

Syntaxe de base de la boucle do-while dans Bash

La syntaxe fondamentale d’une boucle do-while est la suivante.

while [condition]
    do
        first command;
        second command;
        .
        .
        .
        nth command;
done

Les paramètres d’une boucle while peuvent être n’importe quelle expression booléenne. Lorsque le conditionnel n’est jamais évalué à false, la boucle devient infinie.

Appuyez sur CTRL + C pour arrêter la boucle infinie. Regardons un exemple :

#!/bin/bash
x=0
while [ $x -le 4 ]
do
  echo "The value is $x"
  ((x++))
done

La valeur courante de la variable est imprimée et augmentée de un à chaque itération dans l’exemple. La valeur initiale de la variable $x est 0.

Le script ci-dessus s’exécutera jusqu’à ce que la quatrième ligne soit atteinte. Le suffixe -le signifie inférieur ou égal à.

Production :

The value is 0
The value is 1
The value is 2
The value is 3
The value is 4

La déclaration break dans Bash

Nous utilisons une instruction break à l’intérieur de la boucle pour terminer la boucle lorsqu’une condition est remplie.

Par exemple, la boucle se terminera dans le script ci-dessous après la neuvième itération. On peut cependant arrêter le bouclage à la quatrième itération en utilisant les instructions break et if.

#!/bin/bash
x=0
while [ $x -le 9 ]
do
  echo "The value is $x"
  ((x++))
 if [[ "$x" == '4' ]];
  then  
    break  
 fi
done

Production :

The value is 0
The value is 1
The value is 2
The value is 3

l’instruction continue en Bash

L’instruction continue quitte l’itération de la boucle en cours et transfère le contrôle du programme à l’itération suivante.

Prenons un exemple. Lorsque l’élément itéré courant vaut 3, l’instruction continue fait revenir l’exécution au début de la boucle et continue avec l’itération suivante.

#!/bin/bash
x=0
while [ $x -le 5 ]
do
  ((x++))
 if [[ "$x" == '3' ]];
  then  
    continue  
 fi
 echo "The value is $x"
done

Production :

The value is 1
The value is 2
The value is 4
The value is 5
The value is 6

Comme prévu dans la sortie ci-dessus, lorsque $x équivaut à 3, il saute l’itération et passe à la suivante.