Aller au contenu
English
Compte : non connecté, synchronisation possible Mon apprentissage
Selectionner le thème
English

Lire le contenu des fichiers sous Linux

Par mis à jour le

Améliorer cette page

Vous avez trouvé un fichier de configuration ou un log, mais comment voir ce qu'il contient ? Sous Linux, quatre commandes couvrent la quasi-totalité des besoins : cat pour afficher, less pour parcourir, head pour le début, tail pour la fin. Ce guide vous montre quand et comment utiliser chacune.

  • Afficher un fichier entier avec cat
  • Parcourir un fichier long avec less
  • Extraire les premières lignes avec head
  • Extraire les dernières lignes avec tail
  • Suivre un fichier de log en temps réel avec tail -f

cat (concatenate) affiche tout le contenu d'un fichier d'un coup. Pour un fichier court, quelques lignes, c'est la commande la plus directe :

Fenêtre de terminal
cat /etc/hostname
Sortie
srv-debian

L'option -n numérote chaque ligne, utile pour se repérer dans un fichier de configuration :

Fenêtre de terminal
cat -n /etc/ssh/sshd_config
Sortie (extrait)
1 # This is the sshd server system-wide configuration file.
2 #
3 Include /etc/ssh/sshd_config.d/*.conf
4 #Port 22

Comme son nom anglais l'indique (concatenate), cat peut afficher plusieurs fichiers à la suite, dans l'ordre où vous les donnez :

Fenêtre de terminal
cat fichier1.txt fichier2.txt

less ouvre le fichier dans un afficheur interactif. Vous naviguez page par page sans que le terminal défile d'un coup :

Fenêtre de terminal
less /var/log/syslog

Quelques touches suffisent pour se déplacer, et ce sont les mêmes que dans man, qui utilise less comme afficheur. Les touches de recherche sont les plus utiles sur un long journal :

ToucheAction
Espace ou fPage suivante
bPage précédente
gAller au début
GAller à la fin
/motChercher "mot" vers le bas
?motChercher "mot" vers le haut
nOccurrence suivante
qQuitter

more fait la même chose, mais on ne peut avancer que vers le bas (pas de retour arrière). less le remplace dans la quasi-totalité des cas. Retenez principalement less.

head affiche par défaut les 10 premières lignes d'un fichier :

Fenêtre de terminal
head /etc/passwd

Pour n'afficher que les 5 premières :

Fenêtre de terminal
head -n 5 /etc/passwd
Sortie
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync

Cas d'usage typique : vérifier rapidement le format d'un fichier CSV ou de configuration avant de le traiter.

tail affiche par défaut les 10 dernières lignes :

Fenêtre de terminal
tail /var/log/syslog

Pour les 20 dernières :

Fenêtre de terminal
tail -n 20 /var/log/syslog

L'option -f (follow) garde le terminal ouvert et affiche les nouvelles lignes au fur et à mesure qu'elles arrivent. C'est la commande pour surveiller un log :

Fenêtre de terminal
tail -f /var/log/syslog

Chaque fois qu'un événement est écrit dans le fichier, la ligne apparaît immédiatement. Pour quitter : Ctrl+C.

Le choix dépend de deux choses : la longueur du fichier et ce que vous y cherchez. Le tableau reprend les six situations que vous rencontrerez le plus souvent.

BesoinCommande
Voir un petit fichier (< 30 lignes)cat fichier
Voir un petit fichier avec les numéros de lignecat -n fichier
Parcourir un fichier longless fichier
Voir le début d'un fichierhead fichier ou head -n 5 fichier
Voir la fin d'un fichiertail fichier ou tail -n 20 fichier
Surveiller un log en temps réeltail -f fichier

Ces commandes échouent rarement, et quand elles le font, le message ou le symptôme désigne directement la cause. Le cas le plus déroutant est un écran rempli de caractères bizarres : vous avez ouvert un fichier binaire.

ProblèmeCause probableSolution
cat : le terminal défile trop viteFichier trop longUtiliser less
less : commande introuvablePaquet non installé (rare)sudo apt install less
tail -f : rien ne s'afficheLe fichier n'est pas écrit en temps réelVérifier avec ls -l que le fichier grossit
Permission deniedFichier protégéAjouter sudo devant la commande
Caractères bizarres à l'écranFichier binaire affiché par erreurVérifier le type avec file nom_fichier
  • cat pour les fichiers courts, less pour les fichiers longs.
  • head et tail extraient le début ou la fin, contrôlez le nombre de lignes avec -n.
  • tail -f est indispensable pour surveiller un log en temps réel.
  • En cas de doute sur la longueur d'un fichier, commencez toujours par less.

Vérifiez que l'essentiel de ce guide est acquis. Les questions portent uniquement sur ce qui vient d'être expliqué ici.

Contrôle de connaissances

Validez vos connaissances avec ce quiz interactif

6 questions
6 min.
70% requis

Informations

  • Le chronomètre démarre au clic sur Démarrer
  • Questions à choix multiples, vrai/faux et réponses courtes
  • Vous pouvez naviguer entre les questions
  • Les résultats détaillés sont affichés à la fin

Lance le quiz et démarre le chronomètre

Ce projet vous est utile ?

Les guides, formations, quiz et labs restent gratuits. Si vous les utilisez régulièrement, vous pouvez contribuer à leur maintenance et à leur développement.

Devenir membre de soutien (nouvel onglet) Soutenir une fois (nouvel onglet) En savoir plus

Suivez aussi le projet sur LinkedIn