L’un des meilleurs moyens de vous simplifier la vie grâce à la technologie, que ce soit au travail ou à la maison, est d’exploiter l’automatisation. L’automatisation des tâches avec des scripts et des tâches chronométrées est un moyen infaillible de vous faire gagner du temps, des maux de tête et des efforts. Cependant, il n’est pas immédiatement clair par où commencer. Ici, nous vous montrons comment utiliser la commande Bash for loop, l’un des outils fondamentaux de l’automatisation informatique, pour vous aider à démarrer.
Contenu
Configuration de votre environnement de test
La première chose dont vous aurez besoin est une instance fonctionnelle de Bash. Il s’agit du shell par défaut dans le terminal sous Linux, Unix, BSD et macOS (sauf si vous exécutez zsh). Vous pouvez vérifier quel shell vous exécutez en tapant la commande suivante dans votre terminal :
Il devrait imprimer le shell que vous utilisez. Ma sortie me dit que j’utilise /bin/bash, ce qui est exactement ce que je recherche.
Vous aurez également besoin d’un éditeur de texte – quel que soit l’éditeur que vous choisissez, cela devrait convenir. J’utilise Nano dans le terminal, mais vous pouvez tout aussi bien utiliser Vim ou Emacs dans le terminal ou quelque chose comme Gedit, Kate ou Sublime dans l’interface graphique.
Créez un fichier de script dans votre éditeur de texte, soit en utilisant la commande tactile, soit en tapant simplement le nom de votre éditeur de texte et le nom du fichier que vous souhaitez créer. Pour moi, je pourrais simplement taper nano for-loop-test.sh, et je serais en or.
La boucle Bash For : les bases
La boucle For de Bash indique au shell d’itérer sur une plage spécifiée d’objets et d’exécuter une commande spécifiée sur ces objets. Qu’est-ce que ça veut dire? Je pense qu’il peut être plus facile de vous montrer. C’est une boucle For très basique.
La première ligne, pour i dans 1 2 3 4 5 spécifie une variable « i » et une plage de 1 à 5. Cela pourrait tout aussi bien être une autre séquence de nombres plus complexe, ou cela pourrait être une liste de fichiers entrés ici. ou un répertoire.
Le bit suivant est le formatage de base, avec la commande à exécuter dans la partie à onglets. do and done fait partie de la syntaxe de la boucle For et doit y être. Si je devais exécuter ce script, j’obtiendrais une sortie comme celle-ci :
Vous pouvez voir comment cette variable entre en jeu. Elle vous aide à identifier chaque objet individuel dans cette plage d’entrée. Pour spécifier des plages de nombres légèrement plus complexes, vous pouvez utiliser des accolades pour les configurer. Pour spécifier la même plage que précédemment, vous pouvez remplacer $i dans 1 2 3 4 5 par $i dans {1..5}. Le rendu serait le même. Vous pouvez également le faire compter par certains nombres. C’est compter tous les nombres par 3 entre 0 et 27.
L’exécution d’une commande particulière sur un ensemble de fichiers est quelque chose de plus courant dans les scripts. Si je voulais utiliser cat sur un tas de fichiers dans un répertoire, je pourrais le faire en modifiant le script comme suit.
Cela imprimerait la sortie de tous les fichiers du « répertoire de test » sur le terminal.
La sortie ressemblerait à ce qui suit dans mon cas.
Vous pouvez commencer à avoir une idée de la puissance de la boucle For. Cela ne fait qu’effleurer la surface, et vous pouvez enchaîner plusieurs commandes entre do et done, et vous pouvez également utiliser des instructions conditionnelles pour rendre les commandes plus complexes.
N’oubliez pas de consulter nos autres articles Bash, tels que Trucs et astuces Bash pour travailler plus intelligemment dans le terminal et certains des caractères spéciaux Bash que vous devez connaître.
Cet article est-il utile ? Oui Non