Le terminal est une fenêtre où l’on dialogue avec l’ordinateur en tapant du texte. Le programme qui lit et exécute vos commandes s’appelle le shell : le plus courant sur les serveurs Linux est bash, et macOS utilise zsh par défaut (les commandes de ce cours fonctionnent dans les deux). Sous Windows, on utilise généralement WSL (un Linux intégré) ou Git Bash pour retrouver les mêmes commandes.
Pourquoi s’en servir alors qu’il existe des interfaces graphiques ? Parce que les serveurs n’ont souvent pas d’écran, que de nombreux outils (Git, Python, npm, Docker) se pilotent en ligne de commande, et qu’une commande peut s’automatiser dans un script.
L’invite et l’anatomie d’une commande
L’invite (prompt) ressemble à lea@portable:~/projets$. Elle indique l’utilisateur, la machine, le dossier courant, puis $ : le shell attend votre commande.
ls -l --all Documents
# ^ ^ ^ ^
# | | | argument : sur quoi agir
# | | option longue
# | option courte
# nom de la commande
Les options modifient le comportement (souvent -x en version courte, --mot en version longue). Les options courtes se combinent : ls -la équivaut à ls -l -a.
L’arborescence
Les fichiers sont organisés en arbre. Sous Linux et macOS, tout part de la racine /. Votre dossier personnel est par exemple /home/lea (Linux) ou /Users/lea (macOS), abrégé ~.
Naviguer
pwd # print working directory : où suis-je ?
# /home/lea
ls # liste le contenu du dossier courant
ls -l # format long : droits, taille, date
ls -a # inclut les fichiers cachés (commençant par un point)
cd projets # entre dans le sous-dossier projets
cd .. # remonte au dossier parent
cd ~ # retourne au dossier personnel (cd seul fait pareil)
cd - # revient au dossier précédent
Chemins absolus et relatifs
- Un chemin absolu commence par
/et est valable partout :/home/lea/projets/site. - Un chemin relatif part du dossier courant : depuis
/home/lea,projets/sitedésigne le même dossier. .désigne le dossier courant et..le parent :../photossignifie « le dossier photos à côté de moi ».
Si un nom contient des espaces, entourez-le de guillemets : cd "Mes documents".
Trois réflexes qui font gagner du temps
- Tab complète automatiquement les noms de fichiers et de commandes. Deux appuis affichent les possibilités.
- Les flèches haut et bas rappellent les commandes précédentes ;
historyles liste. man lsouvre le manuel d’une commande (toucheqpour quitter) ;ls --helpdonne un résumé.
Et si une commande semble bloquée, Ctrl+C l’interrompt.
Exercices
Les solutions et les tests restent sur le serveur. Dans l'espace étudiant, ton code est exécuté et corrigé, et le tuteur donne des indices avant la solution.
Premier tour d'horizon
Ouvrez le terminal. Affichez le dossier courant, listez son contenu y compris les fichiers cachés, déplacez-vous dans
/tmp, puis revenez dans votre dossier personnel.- La commande pwd affiche un chemin commençant par /
- ls -a affiche au moins les entrées . et ..
- Après cd /tmp, pwd affiche /tmp
- Après cd ~, pwd affiche votre dossier personnel
Chemin relatif
Vous êtes dans
/home/lea/projets/site. Quel chemin désigne/home/lea/photos?- ../photos
- ../../photos
- ~/projets/photos
- /photos
Anatomie d'une commande
Dans
ls -lh /var/log, que représente/var/log?- Une option
- Un argument
- Le nom de la commande
Quiz de fin de leçon
Que fait
cd ..?- Revient au dossier personnel
- Remonte au dossier parent
- Revient au dossier précédent
Quelle commande affiche le dossier courant ?
- ls
- pwd
- cd
Que permet la touche Tab ?
- Annuler une commande
- Compléter automatiquement un nom
- Afficher l'historique
La suite du cours
- Créer, copier, déplacer et supprimer15 min
- Lire des fichiers et chercher l'information15 min
- Redirections et pipes : combiner les commandes15 min
- Scripts, permissions et variables d'environnement20 min