Introduction
Dans ce laboratoire, vous apprendrez une technique puissante appelée substitution de commande.
Imaginez que vous rédigez un e-mail et que vous souhaitez y insérer la date du jour. Vous voulez simplement que l’ordinateur ajoute automatiquement la « date du jour ».
Sous Linux, nous utilisons $(). Cette syntaxe indique à l’ordinateur : « Exécutez d’abord cette commande, puis placez le résultat exactement ici. »
Il s’agit de l’une des fonctions de composition les plus utiles du shell. Au lieu de copier manuellement la sortie d’une commande pour la coller dans une autre, le shell peut effectuer automatiquement cette substitution à votre place.
Dans ce laboratoire, vous allez :
- apprendre à formater la commande
date; - créer un dossier dont le nom correspond automatiquement à la date du jour (par exemple,
2025-12-23).
Formater la date
Commencez par obtenir la date dans le format souhaité.
Si vous exécutez simplement date, la commande affiche une chaîne peu pratique à utiliser.
Cela rappelle que de nombreuses commandes prennent en charge une sortie formatée. Les outils Linux permettent souvent de choisir entre un affichage adapté à la lecture humaine et un format adapté au traitement automatique, selon l’utilisation prévue.
Pour créer un nom de dossier propre, comme 2025-12-23, utilisez +%F :
date +%F
Sortie (exemple) :
2025-12-23
Créer un dossier dynamiquement
Passons maintenant à la partie la plus intéressante.
Vous voulez créer un répertoire à partir de la date, sans la saisir manuellement.
Placez la commande date à l’intérieur de la commande mkdir à l’aide de $(). Lorsque l’ordinateur rencontre $(), il exécute d’abord la commande qui s’y trouve.
Exécutez cette commande :
mkdir $(date +%F)
Voici ce qui s’est produit :
- Le shell a rencontré
$(date +%F). - Il a exécuté
date +%Fen arrière-plan et obtenu le résultat (par exemple,2025-12-23). - Il a remplacé la partie
$()par ce résultat. - Il a exécuté
mkdir 2025-12-23.
Cela montre que le shell construit la commande finale par étapes. La substitution de commande a lieu avant l’exécution effective de la commande, ce qui permet d’utiliser le résultat comme un argument ordinaire.
Vérifier le dossier
Vérifiez maintenant que l’opération a réussi.
Exécutez ls :
ls -l
Vous devriez voir un nouveau dossier dont le nom correspond à la date du jour.
Si vous exécutez ce script demain, il créera un nouveau dossier portant la date de demain. C’est ainsi que fonctionnent les sauvegardes automatisées !
Résumé
Dans ce laboratoire, vous avez découvert la substitution de commande : utiliser la sortie d’une commande comme entrée d’une autre.
- La syntaxe :
$(command) - Le fonctionnement : Linux exécute d’abord la commande interne, puis la remplace par son résultat.
- Le résultat : vous pouvez créer des commandes dynamiques qui varient selon l’heure, l’utilisateur ou d’autres conditions, sans les saisir manuellement.
Essayez d’exécuter echo "Today is $(date)" pour observer à nouveau cette substitution en action !



