Bash imbriqué pour la boucle

Bash imbriqué pour la boucle

Les boucles sont la structure de données utilisée dans de nombreuses langues pour effectuer une tâche dans les itérations I.e., à plusieurs reprises jusqu'à ce que l'objectif réel soit atteint. L'une des nombreuses boucles de programmation est la boucle «pour». La boucle «pour» peut être utilisée seule et plus d'une boucle «pour» dans une séquence serait «imbriquée». Par conséquent, nous avons décidé d'utiliser le «imbriqué» pour les boucles en programmation bash dans nos exemples de l'article d'aujourd'hui. Alors, commençons par l'ouverture de la coquille du terminal dans l'Ubuntu 20.04 Système via le raccourci «Ctrl + Alt + T».

Exemple 01: Simple pour Loop

Dans le shell terminal, nous créerons un nouveau fichier bash nommé «bash.sh ”avec l'instruction« Touch ». Ce fichier sera créé dans le répertoire personnel de notre système. Ce fichier doit être ouvert dans un éditeur I.e., nano, vim ou texte pour y ajouter du code. Nous avons donc ouvert ce fichier nouvellement créé à partir du dossier à domicile dans l'éditeur «Nano» selon l'instruction NANO ci-dessous dans le shell suivie du nom d'un fichier.

$ touch bash.shot
$ nano bash.shot

Nous avons ajouté l'extension bash dans le fichier bash comme «# #!/ bac / bash ». La boucle «pour» simple a été lancée avec des supports «simples» doubles comme ci-dessous. Cette boucle a commencé avec la valeur 1 (variable «i») et se poursuivra jusqu'à ce que la valeur soit égale à 5. À chaque itération, l'opérateur d'incrément a également été utilisé pour augmenter la valeur d'une variable «i» par un. La partie «do» de la boucle «pour» affiche ici. Sur chaque itération, la partie «DO» sera exécutée et la déclaration d'écho affichera le numéro d'itération en utilisant «$ i». Le terme «fait» indique la fin de la boucle. Enregistrons notre code de bash pour l'exécution. Appuyez sur Ctrl + X pour quitter. Le code est joint ici.

En exécutant ce fichier bash, nous avons tous les numéros d'itération imprimés sur le shell. La sortie est présentée dans l'image apposée.

$ bash bash.shot

Exemple 02: Nest pour Loop

Commençons par le nid pour boucle maintenant. Pour cela, nous devons ajouter deux boucles «pour» l'une après l'autre dans une séquence dans le code bash. Ainsi, nous avons ouvert le même fichier et mis à jour notre code que ci-dessous. Les deux boucles «pour» seront démarrées à partir de 1 et se terminent à la valeur 3 avec un incrément de 1. La boucle intérieure exécutera entièrement je.e., jusqu'à trois valeurs, sur la première exécution de la boucle extérieure. À la prochaine itération de la boucle extérieure, la boucle «pour» intérieure sera à nouveau exécutée 3 fois pour évaluer 3 et ainsi de suite pour la dernière itération également. La boucle intérieure sera répétée 9 fois, tandis que la boucle extérieure sera exploitée 3 fois de cette manière. La boucle extérieure ne peut pas passer à son prochain incrément jusqu'à ce que la boucle intérieure se exécute pleinement 3 fois. La boucle intérieure sera chargée de montrer le numéro d'itération de la boucle extérieure ainsi que la boucle intérieure en utilisant la déclaration «Echo» dans sa clause «Do». Les deux boucles ont été terminées par «fait». Le code est joint ici.

Lors de l'exécution de ce code mis à jour avec la commande bash, nous avons exécuté la boucle intérieure 9 fois je.e., 3 fois pour chaque itération de la boucle extérieure. La sortie est présentée dans l'image apposée.

$ bash bash.shot

Exemple 03: imbriqué pour une boucle en une seule ligne

La boucle «pour» imbriquée peut également être utilisée dans le code bash en une seule ligne. Nous avons donc mis à jour le même fichier bash après l'avoir ouvert au sein de l'éditeur Nano que ci-dessous. Pour la première boucle «pour», nous avons utilisé les valeurs x, y et z. Pour la boucle intérieure «pour», nous avons utilisé trois nombres 1, 3 et 5. Dans l'énoncé «DO». Les deux boucles sont terminées en utilisant les clauses «Done» illustrées ci-dessous. Le code est joint ici.

En exécutant cette pièce de code à 1 ligne, nous avons montré la sortie ci-dessous. Pour chaque valeur de la boucle externe, la boucle intérieure est exécutée jusqu'à ses trois valeurs i.e., 1, 3, 5. La sortie est présentée dans l'image apposée.

$ bash bash.shot

Exemple 04: imbriqué pour la boucle

Prenons un autre exemple pour illustrer le fonctionnement de la boucle «pour» imbriquée. Cette fois, nous utilisons la boucle extérieure pour un total de 10 itérations à partir de 1 à 10. Dans cette boucle, une autre boucle «pour» a été utilisée. La boucle intérieure «pour» a utilisé la fonction «SEQ» pour créer une séquence de tout caractère multiplié par la valeur d'itération de la boucle extérieure. Cela signifie que la valeur de la boucle extérieure décidera du nombre de caractères affichés sur le shell. Dans la boucle intérieure, nous avons utilisé l'instruction «Echo» en utilisant l'indicateur «-n» pour tester si la chaîne suivante à insérer dans l'instruction est un caractère ou est vide. Le personnage «*» a été ajouté comme une valeur à multiplier par le numéro d'itération. La première boucle «pour» se termine et une autre instruction «Echo» sera utilisée pour mettre la pause de ligne. L'extérieur pour la boucle se termine après 10 itérations. Enregistrons ce code pour voir son résultat sur le shell. Le code est joint ici.

En exécutant ce code bash, nous avons le beau motif ci-dessous de caractères «*» dans une séquence de 1 à 10 augmentant progressivement. La sortie est présentée dans l'image apposée.

$ bash bash.shot

Conclusion

Pour résumer, il s'agissait de l'utilisation de la boucle «pour» imbriquée dans le script bash de l'Ubuntu 20.04 Système Linux. Nous avons discuté des exemples pour voir une simple boucle «pour» dans Bash, une boucle «For» imbriquée, et une boucle «For» imbriquée en une ligne dans Bash Script.