Plus facile à lire avec un fond crème, une teinte, plus de contraste ou un texte plus grand ? Choisissez vos couleurs et votre texte, une fois pour toutes les pages.

Leçon gratuite

Lire et chercher dans un fichier

La leçon entière est à lire ici. Créez un compte gratuit pour lancer ses commandes dans un laboratoire et passer ses quiz et ses exercices.

Leçon de 45 minAucune commande

Trois mille lignes et un client qui attend

Un client appelle le support : sa commande de ce matin n’est jamais partie.

Le journal de l’application de livraison compte trois mille lignes. Les lire une par une prendrait une heure.

Avec deux commandes, vous trouvez la bonne ligne en quelques secondes.

À la fin de cette leçon

Remarque

Je peux lire et chercher dans des fichiers texte depuis le terminal.

Mots-clés

MotCe que ça veut direExemple
Journalun fichier où un programme note ce qu’il faitlivraisons.log
Fichier texteun fichier fait de lignes que l’on peut lire
Motifle mot ou le morceau de texte recherchéERREUR
Sortiece qu’une commande affiche
Tubele signe | qui passe une sortie à la commande suivante

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

cat, head et wc lisent un fichier

cat affiche tout un fichier. C’est pratique pour un petit fichier, pas pour un gros.

head affiche seulement le début. head -n 2 donne les 2 premières lignes.

wc -l compte les lignes. Vous savez ainsi la taille d’un fichier avant de l’ouvrir.

Lisez le journal des livraisons

Code: bash
printf '%s\n' \
  '2026-10-06 08:58 INFO livraison 4410 partie de Lyon' \
  '2026-10-06 09:03 ERREUR paiement refusé commande 4411' \
  '2026-10-06 09:10 INFO livraison 4412 partie de Lille' \
  '2026-10-06 09:21 ERREUR adresse introuvable commande 4413' \
  '2026-10-06 09:30 INFO livraison 4414 partie de Lyon' \
  '2026-10-06 09:42 ERREUR paiement refusé commande 4415' \
  > livraisons.log

# cat affiche tout le fichier.
cat livraisons.log

# head n’affiche que le début : ici 2 lignes.
head -n 2 livraisons.log

# wc -l compte les lignes.
wc -l livraisons.log

grep garde les lignes qui correspondent

grep MOTIF fichier lit chaque ligne. Il affiche seulement celles qui contiennent le motif.

Ajoutez -c pour obtenir le nombre de lignes trouvées.

Ajoutez -i pour ignorer les majuscules : grep -i erreur trouve aussi ERREUR.

Trouvez les erreurs

Code: bash
printf '%s\n' \
  '2026-10-06 08:58 INFO livraison 4410 partie de Lyon' \
  '2026-10-06 09:03 ERREUR paiement refusé commande 4411' \
  '2026-10-06 09:10 INFO livraison 4412 partie de Lille' \
  '2026-10-06 09:21 ERREUR adresse introuvable commande 4413' \
  '2026-10-06 09:30 INFO livraison 4414 partie de Lyon' \
  '2026-10-06 09:42 ERREUR paiement refusé commande 4415' \
  > livraisons.log

# grep garde les lignes qui contiennent un mot.
grep ERREUR livraisons.log

# -c compte ces lignes au lieu de les afficher.
grep -c ERREUR livraisons.log

# À vous : affichez seulement les livraisons parties de Lyon.

Une erreur fréquente

Attention

Beaucoup pensent que grep erreur trouve aussi ERREUR. Ce n’est vrai qu’avec l’option -i. Sans elle, grep respecte les majuscules et les minuscules à la lettre.

Un tube enchaîne deux commandes

Le signe | s’appelle un tube. Il prend la sortie de la commande de gauche. Il la donne à la commande de droite.

grep ERREUR livraisons.log | wc -l garde les erreurs, puis les compte.

Vous pouvez enchaîner plusieurs tubes. Chaque commande fait un seul petit travail.

Exemple : ce qui passe dans le tube

ÉtapeCommandeCe qui en sort
1cat livraisons.logles 6 lignes du journal
2| grep ERREURles 3 lignes d’erreur
3| grep paiementles 2 erreurs de paiement
4| wc -lle nombre 2

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Enchaînez avec un tube

Code: bash
printf '%s\n' \
  '2026-10-06 08:58 INFO livraison 4410 partie de Lyon' \
  '2026-10-06 09:03 ERREUR paiement refusé commande 4411' \
  '2026-10-06 09:10 INFO livraison 4412 partie de Lille' \
  '2026-10-06 09:21 ERREUR adresse introuvable commande 4413' \
  '2026-10-06 09:30 INFO livraison 4414 partie de Lyon' \
  '2026-10-06 09:42 ERREUR paiement refusé commande 4415' \
  > livraisons.log

# Le tube | envoie la sortie de grep à wc.
grep ERREUR livraisons.log | wc -l

# On enchaîne deux filtres : les erreurs, puis les paiements.
grep ERREUR livraisons.log | grep paiement

# À vous : comptez les lignes INFO avec un tube.

Ce qu’attend un recruteur

Astuce

Au support ou en exploitation, on vous demandera souvent : combien d’erreurs depuis ce matin ? Savoir répondre avec grep et wc, sans ouvrir le fichier, est une compétence attendue dès le premier mois.

Vous enseignez à une classe ? Proposez ce module à vos étudiants avec un guide de l'enseignant, des devoirs corrigés et un laboratoire pour chaque étudiant.