Le scripting BASH
1. Introduction au Scripting Bash
Un script Bash est simplement un fichier texte contenant une série de commandes que le système peut exécuter comme un programme.
Les scripts sont souvent utilisés pour automatiser des tâches administratives.
Structure de base d'un script
Pour créer un script Bash :
Créer un fichier: Par exemple,
mon_script.sh.Déclarer l’interpréteur: La première ligne du script doit indiquer quel interpréteur utiliser (ici,
/bin/bash).Donner des permissions d’exécution: Utilisez
chmodpour permettre l'exécution du script.
Exemple:
Pour exécuter ce script, on utilise :
2. Commandes et Structures de Contrôle de Base
echo
Utilisée pour afficher un texte à l’écran.
Exemple:
read
Permet de lire une entrée utilisateur.
Exemple:
Variables
Les variables sont définies sans espaces autour du signe
=et sont appelées en utilisant le symbole$.
Exemple:
Structures de Contrôle
Conditions : if-else
Exemple:
age=18 if [ $age -ge 18 ]; then echo "Vous êtes majeur." else echo "Vous êtes mineur." fiBoucles : for, while
for: Utilisée pour parcourir une liste d'éléments.
Exemple:
for i in 1 2 3; do echo "Nombre : $i" donewhile: Exécute des instructions tant qu'une condition est vraie.
Exemple:
compteur=1 while [ $compteur -le 5 ]; do echo "Compteur : $compteur" compteur=$((compteur + 1)) doneCase: Permet de gérer plusieurs options.
Exemple:
echo "Entrez une lettre :" read lettre case $lettre in a) echo "Lettre A" ;; b) echo "Lettre B" ;; *) echo "Autre lettre" ;; esac
3. Commandes et Concepts Avancés
Fonctions
Les fonctions permettent de regrouper des blocs de code réutilisables.
Exemple:
Arguments de ligne de commande
Les scripts peuvent recevoir des arguments au moment de l'exécution.
Exemple:
Redirection et Pipes
Redirection: Permet de rediriger l’entrée ou la sortie.
>: Redirige la sortie vers un fichier (écrase).>>: Redirige la sortie vers un fichier (ajoute).<: Redirige l’entrée depuis un fichier.
Exemple:
echo "Hello" > fichier.txt echo "Ajout" >> fichier.txtPipes: Envoie la sortie d'une commande à l'entrée d'une autre commande.
Exemple:
ls -l | grep ".txt"
4. Création d'un Script Bash Complet
Voici un exemple de script Bash qui combine plusieurs commandes pour automatiser une tâche :