Bash pour boucle avec des exemples

Bash pour boucle avec des exemples

Bash est une coque populaire utilisée sur les systèmes Linux et MacOS. Il s'agit d'un outil puissant pour automatiser les tâches répétitives et peut aider à rationaliser les tâches d'administration et de développement du système. L'une des caractéristiques les plus couramment utilisées de Bash est la boucle pour.

Dans ce tutoriel, nous couvrirons les bases de pour les boucles ainsi que les exemples avancés pour les boucles en bash et vous montrer comment les utiliser pour automatiser votre travail.

Qu'est-ce qu'une boucle pour bash?

A pour la boucle est une structure de contrôle dans Bash qui vous permet d'exécuter un ensemble de commandes à plusieurs reprises. Il est particulièrement utile lorsque vous devez effectuer une tâche un certain nombre de fois ou lorsque vous devez traiter une liste d'éléments.

A For Loop a trois composants principaux:

  • Le mot-clé «pour»
  • Une variable qui tiendra chaque élément dans la liste
  • La liste des éléments à itérer

Voici la syntaxe de base d'une boucle pour bash:

pour variable_name dans la liste des commandes DO
1234pour variable_name dans listdo commandesdone

La boucle FOR commence par le mot-clé FOR, suivi du nom de variable qui tiendra chaque élément dans la liste, le mot-clé en. Le corps de boucle est enfermé dans les mots clés DO et fait.

Utiliser pour les boucles en bash

Regardons quelques exemples pour voir comment les boucles fonctionnent en bash.

Exemple 1: nombres d'impression de 1 à 10

Voici un exemple de base, qui imprimera les numéros.

pour i dans 1… 10 faire écho $ je l'ai fait
1234pour i dans 1… 10 faire écho $ idone

Dans cet exemple, nous utilisons une boucle pour imprimer des numéros de 1 pour dix. Nous utilisons une gamme de nombres enfermés en accolades bouclées comme la liste des éléments à itérer. Le corps de boucle se compose d'une seule commande qui imprime la valeur de la variable de boucle je.

Exemple 2: faire une boucle via une liste d'éléments

Vous pouvez définir une liste d'éléments à itérer par la boucle pour.

Pour les fruits en pomme banane orange, faire écho "j'aime $ fruit" fait
1234pour les fruits en pomme banane orangedo écho "j'aime $ fruit" fait

Dans cet exemple, nous utilisons une boucle pour itérater via une liste d'articles - Apple, banane et orange. Le corps de boucle se compose d'une seule commande qui imprime un message en utilisant la valeur de la variable de boucle.

Exemple 3: boucle via des fichiers dans un répertoire

Pour les boucles, les boucles peuvent être utilisées pour itérer les fichiers et les répertoires en bash. Voici un exemple qui montre comment utiliser une boucle pour traiter tous les fichiers dans un répertoire:

pour le fichier dans / path / vers / répertoire / * faire l'écho "Traitement $ fichier" fait
1234pour le fichier dans / path / vers / répertoire / * faire l'écho "Traitement $ fichier" fait

Dans cet exemple, nous utilisons une boucle pour itérater tous les fichiers d'un répertoire. Le fichier de variable LOOP est défini sur le nom de chaque fichier à son tour. Le corps de boucle se compose d'une seule commande qui imprime un message indiquant que le fichier est en cours de traitement.

Exemple 4: imbriqué pour les boucles

Les boucles imbriquées peuvent être utilisées pour parcourir plusieurs listes d'éléments. La boucle extérieure parcourt une liste d'éléments, tandis que la boucle intérieure passe par une autre liste. Voici la syntaxe de base d'une boucle imbriquée en bash:

pour item1 dans list1 do pour item2 dans list2 do commandes effectuées
1234567pour item1 dans list1do pour item2 dans list2 do commandes donEdOne

Regardons un exemple qui utilise des boucles imbriquées pour imprimer toutes les combinaisons possibles de deux lettres:

pour je dans a… z faire pour j dans a… z do echo "$ i $ j" fait fait
1234567pour je dans a..z faire pour j dans a..z do echo "$ i $ j" DonEdOne

Dans cet exemple, la boucle extérieure passe par les lettres A à Z, tandis que la boucle intérieure passe également à travers les lettres A à Z. Le corps de boucle se compose d'un seul commandement qui concaténe les valeurs actuelles des variables de boucle I et J.

Exemple 5: Utilisation de tableaux avec pour boucles

Les tableaux bash peuvent être utilisés avec des boucles pour itérer une liste d'éléments. Voici un exemple qui montre comment utiliser un tableau avec une boucle pour une boucle:

fruits = (pomme banane orange) pour les fruits dans "$ fruits [@]" do echo "j'aime $ fruit" fait
12345fruits = (pomme banane orange) pour les fruits dans "$ fruits [@]" do echo "j'aime $ fruit" fait

Dans cet exemple, nous utilisons un tableau nommé des fruits qui contient trois articles - la pomme, la banane et l'orange. La boucle pour les itérations sur le tableau et le fruit de la variable de boucle est définie sur la valeur de chaque élément dans le tableau à tour.

Conclusion

Dans ce tutoriel, nous avons couvert les bases et avancé pour les exemples de boucles en bash. Nous vous avons montré comment utiliser pour que les boucles automatisent les tâches répétitives, les itération des listes d'éléments et les fichiers de traitement dans un répertoire. pour les boucles sont une fonctionnalité puissante de bash qui peut vous aider à gagner du temps et à rationaliser votre workflow. Avec un peu de pratique, vous pouvez commencer à utiliser pour des boucles pour automatiser votre travail et vous faciliter la vie.