Écrire des scripts sous Linux Bash ⋆ ALexHost SRL

Testez vos compétences sur tous nos services d'hébergement et bénéficiez de 15% de réduction!.

Use code at checkout:

Skills
18.12.2024

Écrire des scripts sous Linux Bash

L’écriture de scripts Bash est un moyen puissant d’automatiser des tâches, de gérer les opérations du système et d’effectuer des opérations complexes sous Linux. En écrivant des scripts Bash, les utilisateurs peuvent combiner plusieurs commandes en un seul script, ce qui permet de gagner du temps et de réduire les erreurs. Bash est l’interpréteur de commandes par défaut dans la plupart des distributions Linux, ce qui en fait un outil essentiel pour les administrateurs, les développeurs et les passionnés de Linux.

Dans cet article, nous verrons comment écrire et exécuter des scripts Bash sous Linux, en abordant les bases, les concepts clés et des exemples pratiques.


Qu’est-ce qu’un script Bash ?

Un script Bash est un fichier texte contenant une séquence de commandes pouvant être exécutées par l’interpréteur de commandes Bash. Il permet aux utilisateurs d’automatiser des tâches répétitives, de créer des flux de travail et de construire des séquences de commandes plus complexes qui peuvent interagir avec le système d’exploitation Linux.

Les scripts Bash peuvent effectuer des tâches telles que :

  • La manipulation de fichiers (copie, déplacement, renommage)
  • L’administration du système (surveillance des processus, gestion des utilisateurs)
  • Automatisation de l’installation de logiciels
  • Exécution de sauvegardes et de tâches planifiées

Comment écrire un simple script Bash

1. Créer un fichier de script Bash

Pour créer un script Bash, vous devez créer un nouveau fichier texte. Utilisez un éditeur de texte tel que nano, vim ou gedit pour créer un fichier script portant l’extension .sh (par exemple, myscript.sh).

nano myscript.sh

2. Ajouter le Shebang (# !)

La première ligne d’un script Bash s’appelle le shebang, qui indique au système l’interpréteur à utiliser pour exécuter le script. Pour les scripts Bash, la ligne shebang ressemble à ceci :

#!/bin/bash

Cela garantit que le script est exécuté à l’aide de l’interpréteur de commandes Bash, même si un autre interpréteur de commandes est utilisé par défaut par l’utilisateur.

3. Écrire des commandes dans le script

Après le shebang, vous pouvez ajouter les commandes que vous souhaitez que le script exécute. Par exemple :

#!/bin/bash # Ceci est un script simple pour accueillir l’utilisateur echo “Hello, $USER !” echo “Today is $(date)” echo “Your current directory is $(pwd)”
  • echo : Imprime du texte sur le terminal.
  • $USER : Une variable système qui contient le nom d’utilisateur actuel.
  • $(date) : Exécute la commande date, qui affiche la date et l’heure actuelles.
  • $(pwd) : Imprime le répertoire de travail actuel.

4. Rendre le script exécutable

Avant de pouvoir exécuter le script, vous devez lui donner les droits d’exécution. Utilisez la commande chmod pour rendre le script exécutable :

chmod x myscript.sh

5. Exécuter le script

Une fois le script exécutable, vous pouvez le lancer à partir du terminal en utilisant la commande suivante :

./myscript.sh

Le script exécutera alors les commandes qu’il contient et affichera la sortie dans le terminal.


Variables dans les scripts Bash

Les scripts Bash permettent d’utiliser des variables pour stocker et manipuler des données. Les variables sont utilisées pour stocker des informations telles que des chaînes de caractères, des nombres et des résultats de commandes.

Exemple de définition de variables :

#!/bin/bash # Définition des variables name=”John” age=25 # Utilisation des variables dans un script echo “Hello, my name is $name.” echo “I am $age years old.”
  • Les variables sont définies sans espace autour du signe =.
  • Pour utiliser la valeur d’une variable, il faut la faire précéder du symbole $ (par exemple, $nom).

Déclarations conditionnelles dans Bash

Les scripts Bash prennent en charge les instructions conditionnelles, qui permettent d’exécuter des commandes en fonction de certaines conditions.

Exemple d’une instruction If :

#!/bin/bash # Demander une entrée à l’utilisateur echo “Entrez un nombre entre 1 et 10 :” read number # Vérifier si le nombre est dans l’intervalle si [ $number -ge 1 ] && [ $number -le 10 ] ; then echo “Le nombre est dans l’intervalle.” else echo “Le nombre est hors de l’intervalle.” fi
  • read : Lit les données de l’utilisateur et les stocke dans une variable.
  • if : Commence l’instruction conditionnelle.
  • [ ] : Utilisé pour tester des conditions (par exemple, des comparaisons).
  • -ge : Supérieur ou égal à.
  • -le : Inférieur ou égal à.
  • && : Opérateur logique ET.

Boucles dans les scripts Bash

Les boucles sont utilisées pour répéter des commandes plusieurs fois. Bash prend en charge les boucles for et while.

Exemple de boucle for :

#!/bin/bash # Boucle sur une plage de nombres for i in {1..5} ; do echo “Iteration $i” done

Cette boucle affiche le texte “Itération” suivi des nombres 1 à 5.

Exemple de boucle While :

#!/bin/bash # Initialise un compteur counter=1 # Boucle tant que le compteur est inférieur ou égal à 5 while [ $counter -le 5 ] ; do echo “Counter : $counter” counter=$((counter 1)) # Incrémente le compteur done

Cette boucle incrémentera et imprimera la valeur du compteur jusqu’à ce qu’il atteigne 5.


Fonctions dans les scripts Bash

Vous pouvez définir des fonctions dans les scripts Bash pour regrouper des commandes qui peuvent être réutilisées dans le script.

Exemple de fonction :

#!/bin/bash # Définir une fonction pour imprimer un message d’accueil greet_user() { echo “Hello, $1 !” } # Appeler la fonction avec un argument greet_user “Alice”
  • greet_user : Le nom de la fonction.
  • $1 : Représente le premier argument passé à la fonction.

Travailler avec des arguments de ligne de commande

Les scripts Bash peuvent accepter des arguments de ligne de commande lorsqu’ils sont exécutés. Ces arguments sont stockés dans des variables spéciales : $1, $2, $3, etc.

Exemple de script avec arguments :

#!/bin/bash # Vérifier si deux arguments ont été fournis if [ $# -ne 2 ] ; then echo “Usage : $0 ” exit 1 fi # Utiliser les arguments echo “Argument 1 : $1” echo “Argument 2 : $2”
  • $# : Le nombre d’arguments transmis au script.
  • $0 : Le nom du script.
  • $1, $2 : Les premier et deuxième arguments passés au script.

Débogage des scripts Bash

Pour déboguer un script Bash, vous pouvez ajouter l’option -x lors de l’exécution du script. Cette option permet d’afficher chaque commande au fur et à mesure de son exécution.

Exemple :

bash -x myscript.sh

Chaque commande sera imprimée avec sa sortie, ce qui vous aidera à identifier les erreurs dans le script.


Conclusion

L’écriture de scripts Bash sous Linux permet d’automatiser des tâches répétitives, d’effectuer des opérations de gestion du système et de créer des flux de travail complexes de manière efficace. En maîtrisant les scripts Bash, vous pouvez augmenter votre productivité et personnaliser votre environnement Linux en fonction de vos besoins. Que vous débutiez ou que vous cherchiez à développer vos compétences en matière de scripts, les scripts Bash sont un outil essentiel pour tout utilisateur de Linux.

Testez vos compétences sur tous nos services d'hébergement et bénéficiez de 15% de réduction!.

Use code at checkout:

Skills