C'est quoi, tail ?
tail affiche les dernières lignes d'un fichier. Par défaut les 10 dernières. Mais avec -f il devient le meilleur outil de monitoring de logs en temps réel.
💡 L'analogie : tail -f, c'est comme regarder quelqu'un écrire un livre en direct. Chaque nouvelle ligne apparaît instantanément.
# 10 dernières lignes (défaut)
$ tail fichier.log
# 50 dernières lignes
$ tail -n 50 fichier.log
# Suivre en temps réel (Ctrl+C pour quitter)
$ tail -f /var/log/nginx/access.log
# Suivre ET filtrer les erreurs en direct
$ tail -f app.log | grep --line-buffered "ERROR"
# -F (majuscule) : reprend si le fichier est rotaté
$ tail -F /var/log/syslog
Flags essentiels
| Flag | Syntaxe | Ce que ça fait |
|---|---|---|
| -n | tail -n 50 | Nombre de lignes à afficher |
| -f | tail -f | Follow — suit le fichier en temps réel |
| -F | tail -F | Comme -f mais survit à la rotation des logs |
| -c | tail -c 500 | Affiche les 500 derniers octets |
| -n +N | tail -n +10 | Affiche depuis la ligne N jusqu'à la fin |
💡 Astuce pro
Combine
tail -f avec grep --line-buffered pour filtrer en temps réel. Le flag --line-buffered est crucial — sans lui grep attend d'avoir un buffer complet avant d'afficher.