Bases de Linux et de la ligne de commande

On veut afficher en continu à l'écran les lignes ajoutées par la suite au fichier journal du serveur /var/log/app.log, au fur et à mesure de leur ajout. Quelle commande convient ?

  1. Atail -f /var/log/app.log
  2. Bhead -n 10 /var/log/app.log
  3. Ccat /var/log/app.log
Afficher la réponse et l'explication

Réponse : A. tail -f /var/log/app.log

tail affiche les dernières lignes d'un fichier (10 par défaut) ; avec -f (follow), il ne se termine pas après les avoir affichées, mais continue de surveiller le fichier et affiche les lignes ajoutées au fur et à mesure. On l'utilise souvent pour suivre dans son journal la progression d'une simulation ou d'une tâche, et Ctrl+C l'arrête. Lorsque le journal est renommé par la rotation des journaux, tail -F, qui continue de suivre le nouveau fichier portant le même nom, est pratique. head affiche les premières lignes et cat le fichier entier une seule fois, puis ils se terminent.

S'entraîner sur ce thème Retour au thème

Autres questions sur Bases de Linux et de la ligne de commande

  1. Quelle est la sortie de la commande ci-dessus, qui extrait des colonnes d'une ligne dont les champs sont séparés par des virgules ?
  2. Quelle est la sortie de la commande sed ci-dessus, qui remplace des caractères ?
  3. Dans la session ci-dessus, qu'affiche le dernier awk ?
  4. Quelle description des fichiers trouvés en exécutant « find /data -name "*.log" -mtime +7 -size +100M » avec le find de GNU est correcte ?
  5. Pour arrêter un processus qui ne répond plus, il est conseillé d'utiliser d'abord « kill <ID du processus> », et de n'utiliser « kill -9 <ID du processus> » que si cela ne suffit pas à le terminer. Quelle en est la raison ?