Dans notre tutoriel précédent, nous avons examiné la commande head de Linux et ses exemples d'utilisation. La commande tail est le complément de la commande head. Il lit et imprime les N dernières lignes d'un fichier. Sans aucune option de commande, il imprime les 10 dernières lignes dans un fichier texte. Dans ce guide, nous nous concentrerons sur la commande tail et explorerons les différentes options fournies avec la commande.
La commande tail prend la syntaxe suivante :
$ tail [options] fichier(s)
1 ) Afficher les 10 dernières lignes d'un fichier
Comme indiqué précédemment, la commande tail, sans aucun argument, affichera les 10 dernières lignes d'un fichier. Nous avons un exemple de fichier appelé asian_countries.txt - Il contient une liste de pays du continent asiatique.
Pour lister les 10 derniers pays du fichier, exécutez la commande :
$ tail asian_countries.txt
2) Afficher les N dernières lignes d'un fichier
Supposons que vous souhaitiez afficher un nombre spécifique de lignes et non les 10 lignes par défaut. Pour ce faire, utilisez le drapeau -n suivi du nombre de lignes.
Par exemple, pour afficher les 5 dernières lignes. Pour ce faire, appelez la commande :
$ tail -n 5 asian_countries.txt
3) Imprimer l'en-tête du nom de fichier
Pour ajouter une balise d'en-tête correspondant au nom de fichier, utilisez l'option -v comme suit :
$ tail -v asian_countries
Dans l'exemple ci-dessous, la balise asian_countries est imprimée en premier, suivie des dix dernières lignes du fichier,
4) Afficher les n dernières lignes de plusieurs fichiers
De plus, vous pouvez lister les N dernières lignes de plusieurs fichiers en utilisant la syntaxe ci-dessous :
$ tail -n 5 file_1 file_2
Nous avons un autre fichier appelé europe_countries.txt qui contient une liste de pays européens. Pour imprimer les 5 dernières lignes des fichiers texte asian_countries.txt et europe_countries.txt, exécutez la commande :
$ tail -n 5 asian_countries.txt europe_countries.txt
Cette fois-ci, notez la démarcation du contenu des deux fichiers à l'aide de l'en-tête de nom de fichier que nous avons mentionné à l'étape précédente. Lors de l'affichage du contenu de plusieurs fichiers, les noms des balises sont automatiquement ajoutés pour une meilleure présentation.
Si vous souhaitez supprimer les en-têtes de nom de fichier dans la sortie de la commande tail, utilisez l'option "-q", l'exemple est illustré ci-dessous :
$ tail -q -n 5 asian_countries.txt europe_countries.txt
5) Enregistrer la sortie de la commande tail dans un fichier texte
Si vous n'avez pas beaucoup de temps pour afficher la sortie et préférez plutôt la voir plus tard, vous pouvez l'enregistrer dans un fichier texte en utilisant l'opérateur de redirection supérieur à (> ).
Par exemple, pour enregistrer la sortie des 5 dernières lignes contenues dans le fichier asian_countries.txt dans le fichier texte output.txt, appelez la commande.
$ tail -n 5 asian_countries.txt > output.txt
REMARQUE :Le signe supérieur ( >) écrase le fichier lorsqu'il est utilisé ultérieurement avec le même fichier. Le contenu d'origine est écrasé et un nouveau contenu est écrit.
Pour ajouter ou ajouter une sortie, utilisez le double signe supérieur à (>> ). Cela ajoute la sortie au fichier au lieu de l'écraser.
Par exemple, pour ajouter les cinq dernières lignes du fichier europe_countries.txt au fichier output.txt, exécutez la commande :
$ tail -n 5 europe_countries.txt >> output.txt
En utilisant la commande cat, vous pouvez voir que le fichier de sortie contient maintenant des données des deux fichiers.
6 ) Utilisez l'option -f pour surveiller les fichiers journaux en temps réel
Lorsqu'elle est utilisée avec l'option -f, la commande tail est principalement utilisée par les administrateurs système pour surveiller les fichiers journaux en temps réel. Par exemple, pour surveiller le fichier journal Syslog en temps réel, exécutez la commande ci-dessous. Vous remarquerez une sortie de journal au bas du terminal toutes les quelques secondes.
$ sudo tail -f /var/log/syslog
Utilisez l'option '-F' dans la commande tail lorsque vous souhaitez continuer à surveiller le fichier journal même lors de sa rotation. Lorsque le fichier est pivoté, la commande tail commencera automatiquement à imprimer les lignes du nouveau fichier si nous utilisons l'option "-F".
$ sudo tailf -F /var/log/syslog
7) Utiliser la commande tail avec des pipes
Sous Linux, les tubes offrent un moyen sympa de traiter du texte. Avec la commande tail, vous pouvez diriger la sortie et modifier davantage ce qui sera affiché. Par exemple, vous pouvez trier la sortie par ordre alphabétique comme suit :
$ tail asian_countries.txt | sort
Vous pouvez également utiliser plusieurs instructions pipe, par exemple :
$ cat asian_countries.txt | tail -n 5 | sort
Alors, que fait la commande ci-dessus ? Tout d'abord, la commande cat imprime le contenu du fichier texte asian_countries.txt. Les informations sont transmises à la commande tail qui imprime les cinq dernières lignes. Puis enfin, les informations sont triées par ordre alphabétique par la commande sort.
8) Imprimer un nombre N d'octets de données à partir d'un fichier
En utilisant l'option '-c' dans la commande tail, nous pouvons imprimer n nombre d'octets de données à partir d'un fichier.
$ tail -c 400 /var/log/kern.log
La commande Above tail affichera 400 octets de données à partir du bas du fichier.
Nous pouvons également imprimer les données en KB et MB en utilisant les paramètres 'K' et 'M', l'exemple est montré ci-dessous
$ tail -c 4k /var/log/kern.log $ tail -c 4M /var/log/kern.log
9 ) Obtenez de l'aide avec les options de la commande tail
Pour obtenir de l'aide avec plus d'options de commande tail, exécutez la commande :
$ tail --help
Alternativement, vous pouvez visiter les pages de manuel comme indiqué :
$ man tail
10) Vérifiez la version de la commande tail
Enfin, pour vérifier la version de la commande tail, exécutez :
$ tail --version
C'est tout de ce guide. J'espère que vous la trouverez instructive. S'il vous plaît partagez vos commentaires et commentaires.