Bash de A à Z

Chapitre 2 / 6

Les variables

Déclarer et lire une variable

En Bash, on affecte sans espace autour du =, et on lit avec $ :

nom="Alice"
echo "Bonjour $nom"        # Bonjour Alice
echo "Dossier : ${nom}_data"   # accolades pour délimiter le nom

⚠️ nom = "Alice" (avec espaces) ne marche pas : Bash croit exécuter la commande nom. Retiens : pas d'espace autour du =.

Guillemets : simples vs doubles

  • Doubles "..." : les variables sont remplacées.
  • Simples '...' : tout est littéral (aucune substitution).
fruit="pomme"
echo "j'aime la $fruit"    # j'aime la pomme
echo 'j'aime la $fruit'    # j'aime la $fruit

💡 Prends l'habitude de toujours guillemeter tes variables ("$fichier") : ça évite les bugs si la valeur contient un espace.

La substitution de commande

$(commande) exécute la commande et remplace par sa sortie :

date_du_jour=$(date +%F)          # ex. 2026-07-02
fichiers=$(ls | wc -l)            # nombre de fichiers
echo "$fichiers fichiers au $date_du_jour"

Lire une saisie utilisateur

read -p "Ton prénom ? " prenom
echo "Salut $prenom !"

Les variables spéciales

VariableContenu
$USER, $HOMEutilisateur, dossier personnel
$PWDdossier courant
$?code de retour de la dernière commande
$0, $1nom du script, arguments (voir chapitre 5)

Les calculs

Bash calcule les entiers avec $(( ... )) :

a=5
b=3
echo "$(( a + b ))"      # 8
echo "$(( a * b ))"      # 15

Au chapitre suivant : prendre des décisions avec les conditions.