Les instructions conditionnelles bash effectuent différents calculs ou actions selon qu'une condition booléenne spécifiée par le programmeur est évaluée comme vraie ou fausse. Ces instructions sont utilisées pour exécuter différentes parties de votre programme shell selon que certaines conditions sont vraies. La possibilité de créer des branches rend les scripts shell puissants.
Dans Bash, nous avons les instructions conditionnelles suivantes :
- instruction if..then..fi (Si simple)
- instruction if..then..else..fi (If-Else)
- instruction if..elif..else..fi (Else If ladder)
- if..then..else..if..then..fi..fi..(Imbriqué si)
Celles-ci sont similaires aux déclarations awk if dont nous avons parlé plus tôt.
1. Instruction Bash If..then..fi
if [ conditional expression ] then statement1 statement2 . fi
Cette instruction if est également appelée instruction if simple. Si l'expression conditionnelle donnée est vraie, elle entre et exécute les instructions comprises entre les mots-clés "then" et "fi". Si l'expression donnée renvoie zéro, alors la liste d'instructions conséquente est exécutée.
si alors fi exemple :
#!/bin/bash count=100 if [ $count -eq 100 ] then echo "Count is 100" fi
2. Instruction Bash If..then..else..fi
If [ conditional expression ] then statement1 statement2 . else statement3 statement4 . fi
Si l'expression conditionnelle est vraie, elle exécute les instructions 1 et 2. Si l'expression conditionnelle renvoie zéro, elle passe à la partie else et exécute les instructions 3 et 4. Après l'exécution de la partie if/else, l'exécution reprend avec les instructions qui en découlent.
si alors sinon fi exemple :
#!/bin/bash count=99 if [ $count -eq 100 ] then echo "Count is 100" else echo "Count is not 100" fi
Remarque : Cet article fait partie de la série de tutoriels Bash en cours.
3. Bash Si..elif..else..fi
If [ conditional expression1 ] then statement1 statement2 . elif [ conditional expression2 ] then statement3 statement4 . . . else statement5 fi
Vous pouvez utiliser ceci if .. elif.. if , si vous souhaitez sélectionner l'un des nombreux blocs de code à exécuter. Il vérifie l'expression 1, si elle est vraie, exécute l'instruction 1,2. Si expression1 est fausse, il vérifie expression2, et si toutes les expressions sont fausses, alors il entre dans le bloc else et exécute les instructions dans le bloc else.
si alors elif alors sinon fi exemple :
#!/bin/bash count=99 if [ $count -eq 100 ] then echo "Count is 100" elif [ $count -gt 100 ] then echo "Count is greater than 100" else echo "Count is less than 100" fi
4. Bash Si..alors..autrement..si..alors..fi..fi..
If [ conditional expression1 ] then statement1 statement2 . else if [ conditional expression2 ] then statement3 . fi fi
Les instructions if et else peuvent être imbriquées dans bash. Le mot-clé "fi" indique la fin de l'instruction interne if et toutes les instructions if doivent se terminer par le mot-clé "fi".
L'exemple "if then elif then else fi" mentionné ci-dessus peut être converti en si imbriqué comme indiqué ci-dessous.
#!/bin/bash count=99 if [ $count -eq 100 ] then echo "Count is 100" else if [ $count -gt 100 ] then echo "Count is greater than 100" else echo "Count is less than 100" fi fi
Dans notre prochain article, nous verrons comment utiliser les expressions conditionnelles Bash avec des exemples pratiques.
Lecture recommandée
Bash 101 Hacks, par Ramesh Natarajan . Je passe la plupart de mon temps sur l'environnement Linux. Donc, naturellement, je suis un grand fan de la ligne de commande Bash et des scripts shell. Il y a 15 ans, lorsque je travaillais sur différentes versions de *nix, j'écrivais beaucoup de code sur le shell C et le shell Korn. Des années plus tard, lorsque j'ai commencé à travailler sur Linux en tant qu'administrateur système, j'ai pratiquement automatisé toutes les tâches possibles à l'aide de scripts shell Bash. Sur la base de mon expérience avec Bash, j'ai écrit le livre électronique Bash 101 Hacks qui contient 101 exemples pratiques sur la ligne de commande Bash et les scripts shell. Si vous songez à maîtriser Bash, rendez-vous service et lisez ce livre, qui vous aidera à prendre le contrôle de votre ligne de commande Bash et de vos scripts shell.