Ce cours intermédiaire transforme des commandes shell familières en programmes Bash réutilisables. Dans six laboratoires guidés, vous créerez des scripts exécutables, accepterez saisie interactive et arguments, choisirez selon des conditions, répéterez avec des boucles, réagirez au statut des commandes et conserverez un historique horodaté.
Le défi final réunit ces bases dans onboard.sh, qui valide un nom d’utilisateur, évite les comptes en double, crée un utilisateur Bash et son répertoire de travail avec le bon propriétaire et journalise la création.
Ce que vous apprendrez
- Écrire un script Bash avec un shebang, le rendre exécutable et le lancer avec
./ - Stocker des valeurs dans des variables et accepter des entrées via
readou$1 - Tester l’existence d’un fichier et l’identité numérique avec
ifetelse - Parcourir des plages numériques et des jokers de noms avec des boucles
for - Répéter tant qu’une condition numérique est vraie avec une boucle
while - Examiner
$?immédiatement après une commande et bifurquer en cas d’échec - Ajouter messages et dates à un journal en chemin absolu sans écraser l’historique
- Construire un script de création de compte avec validation, propriété et audit
À qui s’adresse ce cours
Ce cours s’adresse aux utilisateurs Linux qui maîtrisent déjà commandes, fichiers, permissions, variables et redirection et veulent les combiner dans de petits scripts administratifs Bash.
Prérequis : Navigation dans le terminal, opérations sur les fichiers, Nano ou autre éditeur, variables, jokers, substitution de commandes, redirection, permissions et sudo.
Environnement d’apprentissage : Un terminal LabEx basé sur Ubuntu avec Bash, scripts de projet modifiables, fichiers de test préparés et accès administratif isolé pour les comptes locaux du défi.
Questions fréquentes
Comment le cours est-il organisé ?
Six laboratoires proposent une pratique guidée. Le septième est un défi moins guidé où vous construisez et testez progressivement un programme onboard.sh exécutable.
Le laboratoire de planification configure-t-il Cron ?
Non. Il prépare un script à l’exécution sans surveillance en ajoutant messages et date à un journal absolu, puis simule plusieurs exécutions manuelles. Cron est traité ailleurs.
Quelles modifications le script final apporte-t-il au système ?
Dans le lab isolé, il utilise sudo useradd -m -s /bin/bash, crée /home/<username>/work, attribue la propriété à l’utilisateur et ajoute une entrée à ~/project/onboard.log.
Jusqu’où va la gestion des erreurs ?
Le cours introduit $?, exit non nul, le nombre d’arguments et les conditions pour commande en échec ou utilisateur existant. Traps, set -euo pipefail, nettoyage et rollback ne sont pas couverts.





