Guide des technologies

Prise en main du terminal Linux

9 min read Linux Mis à jour 21 Sep 2025
Guide pratique : démarrer avec le terminal Linux
Guide pratique : démarrer avec le terminal Linux

Closeup of a computer screen with a Linux terminal icon in the center.

Liens rapides

  • Why the Linux Terminal?

  • Basic Commands: pwd, ls, cd, cat, less, rm

  • How To Stop a Linux Terminal Program

  • Terminal Redirection and Pipelines

  • The Linux Command Line: Not Just for Linux

  • Putting It All Together: ImageMagick and FFmpeg Examples

Que vous soyez curieux ou que vous ayez une tâche précise à accomplir, si vous utilisez Linux, tôt ou tard vous devrez passer par le terminal. Ce n’est pas aussi effrayant qu’on le croit. Ce guide vous propose une introduction pratique et des repères pour progresser en sécurité.

Pourquoi utiliser le terminal Linux ?

Linux desktop with Vim and shell in separate terminal windows.

Les systèmes Linux modernes disposent d’interfaces graphiques performantes, mais de nombreuses tâches restent plus rapides et plus fiables via le terminal. Voici pourquoi :

  • Performances : les outils en ligne de commande consomment moins de ressources pour les tâches intensives (transcodage vidéo, traitement d’images, etc.).
  • Automatisation : les commandes se scriptent facilement pour traiter des lots de fichiers.
  • Portabilité : les outils textuels tournent souvent sur différentes machines sans modifications.
  • Contrôle fin : options et pipes permettent d’assembler de petites briques pour des tâches puissantes.

Note rapide : « terminal » désigne l’interface textuelle (client) et « shell » désigne l’interpréteur de commandes (par exemple bash, zsh).

Important : apprendre le terminal est fortement recommandé pour les carrières en développement logiciel, administration système et data engineering.

Commandes de base : pwd, ls, cd, cat, less, rm

Vous trouverez souvent un programme nommé « Terminal » ou « Console » dans le menu de votre distribution. En l’ouvrant, un invite vous attend.

  • Le shell démarre généralement dans votre répertoire « home » (par exemple /home/votre-nom). Linux n’utilise pas de lettres de lecteur : tout part de la racine /.

  • Pour connaître le répertoire courant :

pwd

pwd = Print Working Directory. Il affiche le chemin absolu du répertoire courant. Dans le prompt, ce chemin peut être abrégé en ~ (tilde) pour la home.

Output of pwd on the home directory in Linux.

  • Pour lister les fichiers :
ls

Exemples :

ls /etc
ls -a        # affiche les fichiers dont le nom commence par '.'
ls -l        # affiche permissions, propriétaire, taille, date
ls -la       # combine les deux

Options : la syntaxe classique des options commence par un seul tiret (-) ou deux (–), selon les programmes.

linux-ls

Linux listing of /etc with the ls command.

  • Pour changer de répertoire :
cd /usr/bin       # chemin absolu
cd pictures       # chemin relatif
cd ..             # remonter d'un niveau
cd ../autre       # remonter puis entrer dans 'autre'
cd                # revenir à la home (raccourci)

Astuce : vous pouvez souvent glisser-déposer un fichier depuis un gestionnaire graphique vers le terminal pour remplir automatiquement le chemin.

  • Pour afficher le contenu d’un fichier texte :
cat hello.py
cat foo bar baz   # concatène et écrit plusieurs fichiers

cat affiche les lignes à l’écran. Si vous utilisez cat sur un fichier binaire, le terminal affichera des caractères non lisibles — sans danger mais inutile.

  • Pour lire un grand fichier de façon contrôlée, utilisez un pager :
less /chemin/vers/fichier

less permet d’avancer (espace), de reculer (b), de rechercher (/) et de quitter (q). less est le pager par défaut pour man.

  • Pour supprimer un fichier :
rm fichier

Attention : rm supprime définitivement (sauf si vous utilisez des outils de récupération spécifiques). Prenez l’habitude de vérifier avant de supprimer. Pour supprimer un répertoire et son contenu :

rm -r repertoire

Comment arrêter un programme dans le terminal

Parfois un programme prend plus de temps que prévu. Commandes fréquentes :

  • Ctrl+C : interrompt le processus au premier plan (SIGINT).
  • q : quitter dans less, man et d’autres pagers.
  • Dans Vim : Échap puis :q! pour quitter sans sauvegarder.
  • Pour lancer un processus en arrière-plan : ajoutez & à la fin :
longueux_job &
  • Pour gérer les tâches du shell :
jobs         # lister les jobs du shell
fg %1       # ramener le job 1 au premier plan
bg %1       # envoyer le job 1 en arrière-plan

Pour envoyer d’autres signaux :

kill      # envoie SIGTERM par défaut
kill -9   # SIGKILL (force l'arrêt)

Important : préférez SIGTERM avant SIGKILL pour permettre au processus de se fermer proprement.

Redirections et pipelines

La redirection et les pipelines sont des motifs centraux du shell :

  • Rediriger la sortie standard vers un fichier :
ls > ma_liste.txt     # remplace le fichier
ls >> ma_liste.txt    # append
  • Lire depuis un fichier (entrée standard) :
cat < fichier.txt
  • Connecter la sortie d’une commande à l’entrée d’une autre : le pipe |
ps aux | grep 'sh'

Exemple utile : trier et compter des occurrences :

cat fichier.txt | tr '[:upper:]' '[:lower:]' | sort | uniq -c | sort -nr

Astuces : évitez les pipes inutiles — beaucoup de commandes modernes acceptent directement un nom de fichier.

Linux ps aux output piped into the grep command.

Le terminal Linux n’est pas réservé à Linux

Windows desktop with Chrome, Spotify, and WSL Linux terminal window.

  • macOS : l’application Terminal (ou iTerm2) propose des utilitaires hérités de BSD. Les différences sont généralement mineures pour les tâches courantes.
  • Windows : Windows Subsystem for Linux (WSL) permet d’exécuter des distributions Linux complètes sous Windows. C’est une excellente façon d’apprendre sans virtualisation complète.

Compatibilité : certains outils et options diffèrent entre GNU (Linux) et BSD (macOS). En cas d’erreur, vérifiez la version (man ) et adaptez les options.

Mettre en pratique : ImageMagick et FFmpeg

Un des cas d’usage fréquents du terminal est la conversion et le traitement en lots d’images et vidéos.

  • Redimensionner une image avec ImageMagick (commande magick ou convert selon les versions) :
magick old_image.jpg -resize 25% new_image.jpg

Remarque : la syntaxe “magick resize 25% old_image.jpg new_image.jpg” dans certaines collections est incorrecte ; la forme courante est “magick input -resize 25% output”.

  • Convertir une vidéo avec FFmpeg :
ffmpeg -i Big-buck-bunny_trailer.mp4 test.avi

Exemples pratiques et scripts :

  • Redimensionner toutes les images JPEG d’un dossier (bash) :
mkdir -p resized
for f in *.jpg; do
  magick "$f" -resize 1024x1024\> "resized/$f"
done

Explication : l’opérateur ‘>’ force le redimensionnement uniquement si l’image est plus grande que la taille cible.

  • Extraire l’audio d’une vidéo et le convertir en MP3 :
ffmpeg -i video.mp4 -vn -acodec libmp3lame -q:a 2 audio.mp3
  • Réencoder une vidéo avec bitrate ciblé et conversion de conteneur :
ffmpeg -i input.mkv -c:v libx264 -preset medium -b:v 1500k -c:a aac -b:a 128k output.mp4

Sécurité : pensez à tester vos commandes sur un échantillon avant d’appliquer en masse.

Converting a video from MP4 to AVI on the Linux command line in WSL.


Bonnes pratiques, sécurité et pièges à éviter

  • Sauvegardes : avant une opération destructive (rm, mv en masse, find -delete), faites une copie ou testez avec echo ou –dry-run si l’outil le propose.
  • Permissions : vérifiez qui va exécuter le script. Les commandes lancées avec sudo modifient le système en profondeur. Préférez les droits utilisateur quand c’est possible.
  • Exécuter des scripts téléchargés : lisez le script avant de l’exécuter. Ne pipez pas curl | sh sans inspection.
  • Escalades : n’accordez pas de droits root à un service qui n’en a pas besoin.

Matrice de risques simple :

  • Action : rm -rf /dossier => Risque : perte de données => Mitigation : sauvegarde, test, révision des motifs globaux.
  • Action : exécuter un binaire inconnu => Risque : malware => Mitigation : vérifier la source, exécuter dans un conteneur.

Mental models et heuristiques utiles

  • Unix way : composez de petites commandes qui font une chose bien et combinez-les avec des pipes.
  • Think in streams : stdin/stdout/stderr = canaux de données interchangeables.
  • Idée de robustesse : éviter les « one-liners » incompréhensibles — préférez des scripts commentés.

Alternatives et quand le terminal n’est pas idéal

  • GUI utile quand l’opération nécessite une visualisation interactive (montage vidéo avancé, retouches d’images détaillées).
  • Outils cross-platform avec interface : si plusieurs utilisateurs non techniques doivent intervenir, une GUI peut être préférable.

Contre-exemples : certaines conversions propriétaires ou opérations dépendant d’un logiciel spécifique (par ex. un plugin Photoshop) ne se feront pas via ImageMagick.

Fiches pratiques et cheatsheet (rôle par rôle)

Débutant :

  • Apprendre : pwd, ls, cd, cat, less, rm (avec prudence), cp, mv
  • Astuce : utilisez Tab pour l’autocomplétion

Développeur :

  • Apprendre : git, ssh, scp, rsync, make, gcc/python
  • Scripts : automatiser tests et déploiement via des scripts shell simples

Administrateur système :

  • Apprendre : systemctl, journalctl, top/htop, ps, netstat/ss, ip
  • Outils : sauvegardes, surveillance, cron

Data scientist / traitement media :

  • Apprendre : find, xargs, parallel, awk, sed, ffmpeg, magick
  • Astuce : tester sur petits échantillons avant de lancer en production

Mini-méthodologie pour apprendre le terminal

  1. Objectif concret : choisir une tâche réaliste (ex : redimensionner 200 photos).
  2. Apprendre les commandes nécessaires (ls, cp, magick, for loop).
  3. Écrire un script, commenter, exécuter sur un sous-dossier test.
  4. Ajouter sécurité : –dry-run, sauvegarde.
  5. Automatiser et journaliser.

Tests et critères d’acceptation pour scripts simples

  • Le script doit traiter correctement 10 fichiers de test.
  • Le script doit créer une sauvegarde avant modification.
  • Le script doit retourner un code de sortie non nul en cas d’erreur et écrire une erreur lisible sur stderr.

Nom de section : Critères d’acceptation

  • Traitement par lot : chaque fichier doit être généré dans un dossier “out” avec le même nom de base.
  • Non modification des fichiers originaux.

Commandes avancées et combinaisons utiles

  • find pour rechercher et agir en masse :
find . -type f -name '*.jpg' -exec magick '{}' -resize 800x800\> 'resized/{}' \;
  • xargs pour paralléliser :
find . -name '*.png' -print0 | xargs -0 -n1 -P4 magick -resize 50% {}
  • awk/sed pour transformer du texte :
awk '{print $1, $3}' fichier.txt
sed -n '1,200p' fichier.txt

Remarques sur la portabilité (GNU vs BSD)

  • Sur macOS, certaines options GNU (ex: stat -c) ne fonctionnent pas ; utilisez gstat ou installez coreutils via Homebrew.
  • Sur WSL, la plupart des utilitaires GNU fonctionnent comme sur Linux natif.

Checklist de déploiement minimal pour un script de traitement d’images

  • Exécuter des tests unitaires sur 10 images
  • Vérifier l’existence des programmes requis (magick, ffmpeg)
  • Créer un répertoire de sortie
  • Enregistrer un log timestampé
  • Gérer les erreurs et renvoyer un code de sortie

Gallery d’exemples, variantes et cas limites

  • Images très grandes : préférez une stratégie par lots et limiter la mémoire.
  • Fichiers corrompus : détecter via magick identify avant traitement.
  • Vidéos avec codecs propriétaires : FFmpeg peut ne pas lire certains codecs ; installer les décodeurs appropriés.

Glossaire (une ligne chacun)

  • shell : interpréteur de commandes (bash, zsh).
  • terminal : interface textuelle où s’exécute le shell.
  • stdin/stdout/stderr : canaux d’entrée/sortie/erreur.
  • pipe (|) : envoi de la sortie d’une commande vers une autre.
  • pattern glob : motif de nom de fichier comme *.jpg.
  • pager : programme qui affiche un fichier page par page (less, more).

Petites recommandations de sécurité finale

  • Ne donnez pas de droits root sans raison.
  • Testez sur des copies.
  • Journalisez les opérations massives.

Résumé : le terminal est un outil polyvalent et efficient. Commencez par maîtriser quelques commandes de base, comprenez la redirection et les pipelines, puis automatisez vos tâches avec des scripts simples. Quand vous serez à l’aise, explorez find/xargs, awk, sed, ImageMagick et FFmpeg pour des traitements en masse.

Notes importantes :

  • Ce guide n’est qu’une introduction ; la pratique régulière est la meilleure école.
  • Adaptez les exemples à votre environnement (GNU vs BSD, chemins absolus/relatifs).
Auteur
Édition

Matériaux similaires

Installer le mod Real Vendors Name pour Cyberpunk 2077
Mods

Installer le mod Real Vendors Name pour Cyberpunk 2077

Voir et supprimer l'historique de recherche YouTube
Vie privée

Voir et supprimer l'historique de recherche YouTube

Guide pratique : démarrer avec le terminal Linux
Linux

Guide pratique : démarrer avec le terminal Linux

Gérer l'historique de recherche YouTube
Confidentialité

Gérer l'historique de recherche YouTube

Erreur Hueneme Negev — résoudre Black Ops 6
Dépannage

Erreur Hueneme Negev — résoudre Black Ops 6

Sécuriser l'autofill des gestionnaires de mots de passe
Sécurité Web

Sécuriser l'autofill des gestionnaires de mots de passe