Avant de commencer
- Un ordinateur sous Linux (Ubuntu, Debian, Linux Mint, Fedora…), une machine virtuelle ou un serveur auquel vous êtes connecté en SSH
- Sous Windows : WSL (« Sous-système Windows pour Linux ») fait aussi très bien l'affaire pour s'entraîner
- Aucune connaissance préalable : on part de zéro
La ligne de commande fait peur au début, mais une trentaine de commandes suffisent pour 90 % des besoins : se déplacer, gérer des fichiers, installer des logiciels, surveiller la machine. Cette fiche les regroupe par usage, avec à chaque fois un exemple que vous pouvez taper tel quel.
Les exemples sont donnés pour Debian et Ubuntu. Presque tout fonctionne à l'identique sur les autres distributions ; seule l'installation des logiciels change (voir la partie 7).
1. Les bases du terminal
Ouvrez un terminal : sous Ubuntu, Ctrl + Alt + T, ou cherchez « Terminal » dans les applications. Vous voyez une ligne de ce genre, appelée l'invite :
spo@portable:~$
Elle indique l'utilisateur (spo), le nom de la machine (portable) et le dossier où vous êtes (~ désigne votre dossier personnel). Le $ signale un utilisateur normal ; un # signale le compte administrateur root.
Une commande se construit toujours de la même façon :
commande -options arguments
ls -l /home
Ici, ls est la commande (lister), -l l'option (affichage détaillé) et /home l'argument (le dossier à lister). Linux distingue les majuscules et minuscules : Documents et documents sont deux dossiers différents.
Les trois réflexes qui font gagner un temps fou
Tab: complète automatiquement un nom de commande ou de fichier. Appuyez deux fois pour voir les possibilités.↑et↓: rappellent les commandes précédentes.Ctrl+C: interrompt la commande en cours. Dans un terminal, ce raccourci ne copie pas : pour copier, utilisezCtrl+Maj+C, etCtrl+Maj+Vpour coller.
2. Se repérer et se déplacer
| Commande | À quoi elle sert | Exemple |
|---|---|---|
pwd |
Affiche le dossier où vous êtes | pwd |
ls |
Liste le contenu d'un dossier | ls |
ls -lah |
Liste détaillée, fichiers cachés compris, tailles lisibles (Ko, Mo) | ls -lah ~/Documents |
cd |
Change de dossier | cd /etc |
cd .. |
Remonte d'un niveau | cd .. |
cd ~ ou cd |
Retourne dans votre dossier personnel | cd |
cd - |
Revient au dossier précédent | cd - |
Deux façons d'écrire un chemin :
- Absolu, depuis la racine du système, commence par
/:/home/spo/Documents. - Relatif, depuis le dossier actuel :
Documents/factures.
Les fichiers dont le nom commence par un point (.bashrc, .ssh) sont cachés : seul ls -a les affiche.
3. Gérer fichiers et dossiers
| Commande | À quoi elle sert | Exemple |
|---|---|---|
mkdir |
Crée un dossier | mkdir projets |
mkdir -p |
Crée toute une arborescence d'un coup | mkdir -p projets/2026/photos |
touch |
Crée un fichier vide | touch notes.txt |
cp |
Copie un fichier | cp notes.txt notes-copie.txt |
cp -r |
Copie un dossier et tout son contenu | cp -r projets projets-sauve |
mv |
Déplace ou renomme | mv notes.txt archives/ ou mv brouillon.txt final.txt |
rm |
Supprime un fichier | rm vieux.txt |
rm -r |
Supprime un dossier et tout son contenu | rm -r vieux-dossier |
rm -i |
Demande confirmation avant chaque suppression | rm -i *.log |
Le caractère * remplace « n'importe quoi » : *.jpg désigne tous les fichiers qui finissent par .jpg. Si un nom contient des espaces, entourez-le de guillemets : cd "Mes documents".
Pas de corbeille dans le terminal
rm supprime définitivement, sans passer par la corbeille. Avant un rm avec *, lancez d'abord un ls avec le même motif pour voir exactement ce qui sera supprimé. Et ne tapez jamais une commande contenant rm -rf / trouvée sur internet : elle efface tout le système.
4. Lire le contenu d'un fichier
| Commande | À quoi elle sert | Exemple |
|---|---|---|
cat |
Affiche un fichier court en entier | cat /etc/hostname |
less |
Parcourt un long fichier page par page (q pour quitter, /mot pour chercher) |
less /var/log/syslog |
head |
Affiche les premières lignes (10 par défaut) | head -n 20 fichier.csv |
tail |
Affiche les dernières lignes | tail -n 50 /var/log/syslog |
tail -f |
Suit un fichier en direct (idéal pour les journaux), Ctrl + C pour arrêter |
tail -f /var/log/syslog |
wc -l |
Compte les lignes | wc -l liste.txt |
5. Modifier un fichier avec nano
nano est l'éditeur de texte le plus simple, installé presque partout :
nano notes.txt
On tape le texte directement. Les raccourcis sont rappelés en bas de l'écran (^ signifie Ctrl) :
Ctrl+OpuisEntrée: enregistrer ;Ctrl+X: quitter ;Ctrl+W: rechercher ;Ctrl+K: couper la ligne,Ctrl+U: la coller.
Pour un fichier système, ajoutez sudo devant : sudo nano /etc/hosts. Faites une copie avant de modifier un fichier de configuration : sudo cp /etc/hosts /etc/hosts.bak.
Coincé dans vi ou vim ?
Si un autre éditeur s'ouvre et que plus rien ne répond comme prévu, c'est sans doute vi. Appuyez sur Échap, tapez :q! puis Entrée pour quitter sans enregistrer.
6. Chercher un fichier ou un texte
| Commande | À quoi elle sert | Exemple |
|---|---|---|
find |
Cherche des fichiers par nom (-iname ignore les majuscules) |
find ~ -iname "*facture*" |
find -size |
Cherche les gros fichiers | find ~ -size +500M |
grep |
Cherche un mot dans un fichier | grep "erreur" journal.txt |
grep -rin |
Cherche dans tout un dossier, sans tenir compte des majuscules, avec les numéros de ligne | grep -rin "password" ~/scripts |
which |
Indique où se trouve un programme | which python3 |
7. Installer et mettre à jour des logiciels
Chaque famille de distributions a son gestionnaire de paquets. Il télécharge les logiciels depuis les dépôts officiels, vérifiés par la distribution : c'est la méthode à privilégier plutôt que de télécharger des fichiers sur des sites.
| Action | Debian, Ubuntu, Mint | Fedora, Rocky, Alma | Arch, Manjaro |
|---|---|---|---|
| Mettre à jour tout le système | sudo apt update && sudo apt upgrade |
sudo dnf upgrade |
sudo pacman -Syu |
| Installer | sudo apt install htop |
sudo dnf install htop |
sudo pacman -S htop |
| Désinstaller | sudo apt remove htop |
sudo dnf remove htop |
sudo pacman -R htop |
| Chercher | apt search htop |
dnf search htop |
pacman -Ss htop |
Sous Debian et Ubuntu, apt update rafraîchit la liste des logiciels disponibles et apt upgrade installe les mises à jour : on lance toujours les deux, dans cet ordre. sudo apt autoremove supprime ensuite les paquets devenus inutiles.
8. Utilisateurs et droits
sudo exécute une commande avec les droits d'administrateur. Il demande votre mot de passe (pas celui de root), et rien ne s'affiche pendant la saisie : c'est normal.
| Commande | À quoi elle sert | Exemple |
|---|---|---|
whoami |
Affiche votre nom d'utilisateur | whoami |
id |
Affiche vos groupes (le groupe sudo ou wheel donne les droits d'administration) |
id |
passwd |
Change votre mot de passe | passwd |
chmod |
Change les droits d'un fichier | chmod +x script.sh |
chown |
Change le propriétaire d'un fichier | sudo chown spo:spo fichier.txt |
Dans un ls -l, la première colonne indique les droits, par exemple -rwxr-xr--. Après le premier caractère (- pour un fichier, d pour un dossier), on lit trois groupes de trois lettres : les droits du propriétaire, du groupe, puis de tous les autres. r = lire, w = modifier, x = exécuter (ou entrer, pour un dossier).
On les écrit souvent en chiffres : r = 4, w = 2, x = 1, qu'on additionne. Les deux valeurs à connaître :
chmod 644 fichier: vous lisez et modifiez, les autres lisent seulement (fichiers ordinaires) ;chmod 755 dossier: vous faites tout, les autres lisent et entrent (dossiers, scripts).
Jamais de chmod 777
Un tutoriel qui conseille chmod 777 pour « régler un problème de droits » ouvre le fichier en écriture à tout le monde. Cherchez plutôt le bon propriétaire avec chown.
9. Surveiller le système
| Commande | À quoi elle sert | Exemple |
|---|---|---|
df -h |
Espace libre sur chaque disque | df -h |
du -sh |
Taille d'un dossier | du -sh ~/Téléchargements |
du -sh * | sort -h |
Taille de chaque élément du dossier, du plus petit au plus gros | du -sh * | sort -h |
free -h |
Mémoire vive utilisée et disponible | free -h |
top ou htop |
Processus en cours, en direct (q pour quitter). htop est plus lisible mais s'installe à part |
htop |
ps aux |
Liste tous les processus | ps aux | grep firefox |
kill |
Arrête un processus grâce à son numéro (PID) | kill 4321 |
uptime |
Depuis quand la machine tourne, et sa charge | uptime |
uname -a |
Version du noyau Linux | uname -a |
cat /etc/os-release |
Nom et version de la distribution | cat /etc/os-release |
Si kill ne suffit pas, kill -9 4321 force l'arrêt, sans laisser au programme le temps d'enregistrer : à garder en dernier recours.
10. Gérer les services
Les services (serveur web, SSH, impression…) tournent en arrière-plan. Sur presque toutes les distributions actuelles, ils sont pilotés par systemctl :
systemctl status ssh # état du service
sudo systemctl restart ssh # redémarrer
sudo systemctl stop ssh # arrêter
sudo systemctl start ssh # démarrer
sudo systemctl enable ssh # lancer automatiquement au démarrage
journalctl -u ssh -n 50 # ses 50 derniers messages
Le nom du service varie selon la distribution : ssh sous Debian et Ubuntu, sshd sous Fedora ou Rocky. La touche Tab après systemctl status propose les noms disponibles.
Pour éteindre ou redémarrer la machine : sudo poweroff et sudo reboot.
11. Le réseau en quelques commandes
| Commande | À quoi elle sert | Exemple |
|---|---|---|
ip a |
Adresses IP de la machine | ip a |
ip r |
Passerelle par défaut (votre box ou routeur) | ip r |
ping -c 4 |
Teste si une machine répond (4 essais) | ping -c 4 1.1.1.1 |
ss -tulpn |
Ports ouverts en écoute sur la machine (avec sudo pour voir les programmes) |
sudo ss -tulpn |
curl -I |
Teste un site web et affiche sa réponse | curl -I https://exemple.fr |
ssh |
Se connecte à une autre machine | ssh spo@192.168.1.20 |
scp |
Copie un fichier vers une autre machine | scp photo.jpg spo@192.168.1.20:~/ |
Pour aller plus loin : diagnostiquer une panne réseau et sécuriser l'accès SSH.
12. Archiver et compresser
tar -czf sauvegarde.tar.gz Documents/ # créer une archive compressée
tar -tzf sauvegarde.tar.gz # voir son contenu
tar -xzf sauvegarde.tar.gz # l'extraire dans le dossier actuel
unzip archive.zip # extraire un .zip
Pour retenir tar : c = créer, x = extraire, t = lister, z = compression gzip, f = nom du fichier (toujours en dernier). unzip n'est pas toujours installé : sudo apt install unzip.
13. Combiner les commandes
La vraie force du terminal, c'est d'enchaîner les commandes :
| Symbole | Effet | Exemple |
|---|---|---|
| |
Envoie le résultat d'une commande à la suivante | ls -l | less |
> |
Écrit le résultat dans un fichier (écrase son contenu) | ls > liste.txt |
>> |
Ajoute le résultat à la fin d'un fichier | date >> journal.txt |
&& |
Lance la seconde commande seulement si la première a réussi | sudo apt update && sudo apt upgrade |
Et pour retrouver ce que vous avez déjà tapé :
history: liste les dernières commandes ;Ctrl+Rpuis quelques lettres : recherche dans l'historique ;clearouCtrl+L: nettoie l'écran.
14. Trouver de l'aide
man ls: le manuel complet d'une commande (qpour quitter,/motpour chercher) ;ls --help: le résumé des options, plus rapide à lire ;tldr ls: des exemples concrets plutôt qu'un manuel, à installer avecsudo apt install tldr.
À retenir
Tabpour compléter,↑pour rappeler,Ctrl+Cpour interrompre.pwd,ls,cdpour se repérer ;cp,mv,rm,mkdirpour les fichiers.rmne passe pas par la corbeille : vérifiez aveclsavant.- Mises à jour régulières :
sudo apt update && sudo apt upgrade(ou l'équivalent de votre distribution). sudoseulement quand c'est nécessaire, et jamais une commande copiée d'internet sans la comprendre.