AWK - Flux de contrôle
Comme les autres langages de programmation, AWK fournit des instructions conditionnelles pour contrôler le flux d'un programme. Ce chapitre explique les instructions de contrôle d'AWK avec des exemples appropriés.
Si déclaration
Il teste simplement la condition et effectue certaines actions en fonction de la condition. Voici la syntaxe deif déclaration -
Syntaxe
if (condition)
action
Nous pouvons également utiliser une paire d'accolades comme indiqué ci-dessous pour exécuter plusieurs actions -
Syntaxe
if (condition) {
action-1
action-1
.
.
action-n
}
Par exemple, l'exemple suivant vérifie si un nombre est pair ou non -
Exemple
[jerry]$ awk 'BEGIN {num = 10; if (num % 2 == 0) printf "%d is even number.\n", num }'
En exécutant le code ci-dessus, vous obtenez le résultat suivant -
Production
10 is even number.
If Else Statement
Dans if-else syntaxe, nous pouvons fournir une liste d'actions à effectuer lorsqu'une condition devient fausse.
La syntaxe de if-else la déclaration est la suivante -
Syntaxe
if (condition)
action-1
else
action-2
Dans la syntaxe ci-dessus, action-1 est exécutée lorsque la condition est évaluée à vrai et action-2 est exécutée lorsque la condition est évaluée à fausse. Par exemple, l'exemple suivant vérifie si un nombre est pair ou non -
Exemple
[jerry]$ awk 'BEGIN {
num = 11; if (num % 2 == 0) printf "%d is even number.\n", num;
else printf "%d is odd number.\n", num
}'
En exécutant ce code, vous obtenez le résultat suivant -
Production
11 is odd number.
Échelle If-Else-If
Nous pouvons facilement créer un if-else-if échelle en utilisant plusieurs if-elsedéclarations. L'exemple suivant illustre ceci -
Exemple
[jerry]$ awk 'BEGIN {
a = 30;
if (a==10)
print "a = 10";
else if (a == 20)
print "a = 20";
else if (a == 30)
print "a = 30";
}'
En exécutant ce code, vous obtenez le résultat suivant -
Production
a = 30