Dans ce sujet, nous comprendrons comment utiliser si les déclarations dans les scripts Bash pour terminer nos tâches automatisées.
Bash si les déclarations sont bénéfiques. Ils sont utilisés pour effectuer des tâches conditionnelles dans le flux séquentiel d'exécution des instructions. Les instructions If nous permettent généralement de prendre des décisions dans nos scripts Bash. Ils nous aident à décider d'exécuter ou non un morceau de code en fonction de la condition que nous pouvons définir.
Déclarations if de base
Une instruction if de base commande que si une condition particulière est vraie, alors n'exécutez qu'un ensemble d'actions donné. Si ce n’est pas vrai, n’exécutez pas ces actions. L'instruction If est basée sur le format suivant :
Syntaxe
if [ expression ]; then statements fi
La déclaration entre alors et être (Si à l'envers) ne sera exécuté que si l'expression (entre crochets) est vraie.
expression de régression en java
Note:Observez les espaces utilisés dans la première ligne et un point-virgule à la fin de la première ligne ; les deux sont obligatoires à utiliser.Si instruction conditionnellese termine parêtre.
- Pour utiliser plusieurs conditions avec l'opérateur AND :
if [ expression_1 ] && [ expression_2 ]; then statements fi
- Pour utiliser plusieurs conditions avec l'opérateur OR :
if [ expression_1 ] || [ expression_2 ]; then statements fi
- Pour les expressions composées avec les opérateurs AND & OR, nous pouvons utiliser la syntaxe suivante :
if [ expression_1 && expression_2 || expression_3 ]; then statements fi
Voici quelques exemples illustrant l’utilisation de l’instruction if :
Exemple 1
Dans cet exemple, prenez une entrée utilisateur de n'importe quel nombre et vérifiez si la valeur est supérieure à 125.
#!/bin/bash read -p ' Enter number : ' number if [ $number -gt 125 ] then echo 'Value is greater than 125' fi
Sortir
Si nous entrons le nombre 159, le résultat ressemblera à :
notes de bas de page de démarque
Exemple 2
Dans cet exemple, nous démontrons l'utilisation de si déclaration avec un scénario simple de comparaison de deux chaînes :
#!/bin/bash # if condition is true if [ 'myfile' == 'myfile' ]; then echo 'true condition' fi # if condition is false if [ 'myfile' == 'yourfile' ]; then echo 'false condition' fi
Sortir
Exemple 3
Dans cet exemple, nous montrons comment comparer des nombres en utilisant l'instruction if :
#!/bin/bash #if condition (greater than) is true if [ 10 -gt 3 ]; then echo '10 is greater than 3.' fi #if condition (greater than) is false if [ 3 -gt 10 ]; then echo '3 is not greater than 10.' fi #if condition (lesser than) is true if [ 3 -lt 10 ]; then echo '3 is less than 10.' fi #if condition (lesser than) is false if [ 10 -lt 3 ]; then echo '10 is not less than 3.' fi #if condition (equal to) is true if [ 10 -eq 10 ]; then echo '10 is equal to 10.' fi #if condition (equal to) is false if [ 10 -eq 9 ]; then echo '10 is not equal to 9' fi
Sortir
Exemple 4
Dans cet exemple, nous définirons comment utiliser l'opérateur AND pour inclure plusieurs conditions dans l'expression if :
#!/bin/bash # TRUE && TRUE if [ 8 -gt 6 ] && [ 10 -eq 10 ]; then echo 'Conditions are true' fi # TRUE && FALSE if [ 'mylife' == 'mylife' ] && [ 3 -gt 10 ]; then echo 'Conditions are false' fi
Sortir
Exemple 5
Dans cet exemple, nous définirons comment utiliser l'opérateur OR pour inclure plusieurs conditions dans l'expression if :
#!/bin/bash # TRUE || FALSE if [ 8 -gt 7 ] || [ 10 -eq 3 ]; then echo ' Condition is true. ' fi # FALSE || FALSE if [ 'mylife' == 'yourlife' ] || [ 3 -gt 10 ]; then echo ' Condition is false. ' fi
Sortir
Exemple 6
Dans cet exemple, nous définirons comment utiliser AND et OR pour inclure plusieurs conditions dans l'expression if :
#!/bin/bash # TRUE && FALSE || FALSE || TRUE if [[ 10 -eq 10 && 5 -gt 4 || 3 -eq 4 || 3 -lt 6 ]]; then echo 'Condition is true.' fi # TRUE && FALSE || FALSE if [[ 8 -eq 8 && 8 -gt 10 || 9 -lt 5 ]]; then echo 'Condition is false' fi
Sortir
zéros numpy
Options pour l'instruction If dans les scripts Bash
L'instruction If contient de nombreuses options pour effectuer une tâche spécifique. Ces options peuvent être utilisées pour les opérations sur les fichiers, les opérations sur les chaînes, etc. Voici les options les plus utilisées :
Options (opérateurs) | Description |
---|---|
! EXPRESSION | Pour vérifier si EXPRESSION est fausse. |
-n CHAÎNE | Pour vérifier si la longueur de STRING est supérieure à zéro. |
-z CHAÎNE | Pour vérifier si la longueur de STRING est nulle (c'est-à-dire qu'elle est vide) |
CHAÎNE1 == CHAÎNE2 | Pour vérifier si STRING1 est égal à STRING2. |
CHAÎNE1 != CHAÎNE2 | Pour vérifier si STRING1 n’est pas égal à STRING2. |
ENTIER1 -eq ENTIER2 | Pour vérifier si INTEGER1 est numériquement égal à INTEGER2. |
ENTIER1 -gt ENTIER2 | Pour vérifier si INTEGER1 est numériquement supérieur à INTEGER2. |
ENTIER1 -lt ENTIER2 | Pour vérifier si INTEGER1 est numériquement inférieur à INTEGER2. |
-d FICHIER | Pour vérifier si FILE existe et s’il s’agit d’un répertoire. |
-e FICHIER | Pour vérifier si FILE existe. |
-r FICHIER | Pour vérifier si FILE existe et que l’autorisation de lecture est accordée. |
-s FICHIER | Pour vérifier si FILE existe et que sa taille est supérieure à zéro (ce qui signifie qu'il n'est pas vide). |
-w FICHIER | Pour vérifier si FILE existe et que l’autorisation d’écriture est accordée. |
x FICHIER | Pour vérifier si FILE existe et que l’autorisation d’exécution est accordée. |
Imbriqué si
Vous pouvez appliquer autant d'instructions « if » que nécessaire dans votre script bash. Il est également possible d'utiliser une instruction if dans une autre « instruction if ». Il est connu sous le nom d’instruction If imbriquée.
Exemple
Dans cet exemple, nous trouverons « si un nombre donné est supérieur à 50 et s'il s'agit d'un nombre pair » en utilisant une expression if imbriquée.
comment lire un fichier json
#!/bin/bash #Nested if statement if [ -gt 50 ] then echo 'Number is greater than 50.' if (( % 2 == 0 )) then echo 'and it is an even number.' fi fi
Sortir
Si nous saisissons une valeur d’argument de 100, le résultat ressemblera à :
Conclusion
Dans cette rubrique, nous avons expliqué comment utiliser le branchement conditionnel dans le flux séquentiel d'exécution des instructions avec l'instruction bash if.