Vous savez peut-être que la commande cat est utilisée pour imprimer le contenu d’un fichier, sur le terminal.
La commande cat imprime l’intégralité du fichier sur le terminal.
Mais parfois on peut avoir besoin d’afficher que le début.
Pour ce faire, vous pouvez utiliser la commande head qui permet d’afficher les N premières lignes d’un fichier.
C’est donc l’inverse de la commande tail.
Dans ce tutoriel, je vous donne 5 exemples pour utiliser la commande head.
Table des matières
- 1 5 exemples pour utiliser de la commande head
- 1.1 Syntaxe de la commande head
- 1.2 Afficher les N premières lignes d’un fichier avec head
- 1.3 Afficher toutes sauf les N dernières lignes
- 1.4 Afficher plusieurs fichiers avec la commande head
- 1.5 Traiter l’en-tête dans la sortie
- 1.6 Afficher un nombre spécifique d’octets / caractères d’un fichier
- 1.7 Afficher les N lignes d’un fichier en combinant les commandes head et tail
- 2 Liens
5 exemples pour utiliser de la commande head
Syntaxe de la commande head
Voici la syntaxe par défaut de la commande head :
head [option] [fichier]
Par défaut, elle affiche les 10 premières lignes de chaque fichier à la sortie standard.
Avec plus d’un fichier, précède chacun avec un en-tête donnant le nom du fichier.
Notez que les lignes vides sont considérés comme une ligne à part entière.
Imaginons le texte suivant dans le fichier rose-tatoo.txt :
1 The pictures tell the story 2 This life had many shades 3 I'd wake up every morning and before I'd start each day 4 I'd take a drag from last nights cigarette 5 That smoldered in its tray 6 Down a little something and then be on my way 7 8 I traveled far and wide 9 And laid this head in many ports 10 I was guided by a compass 11 I saw beauty to the north 12 I drew the tales of many lives 13 And wore the faces of my own 14 I had these memories all around me 15 So I wouldn't be alone
Afficher les N premières lignes d’un fichier avec head
Lorsque vous avez besoin d’imprimer un nombre spécifique de lignes, vous pouvez utiliser l’option -n suivie du nombre de lignes.
Par exemple, pour afficher les 2 premières lignes, vous pouvez utiliser ceci:
head -n 2 rose-tatoo.txt
Une syntaxe plus rapide consiste à écrire directement le nombre de lignes à afficher de cette manière.
Par exemple ici on affiche les quatre premières lignes.
head -4 rose-tatoo.txt
Afficher toutes sauf les N dernières lignes
Vous pouvez exclure un nombre spécifique de lignes à la fin du fichier et imprimer le contenu restant du fichier en fournissant un numéro négatif à l’option.
Par exemple, si vous souhaitez quitter les 15 dernières lignes du fichier, vous pouvez utiliser cette commande:
head -n -2 rose-tatoo.txt
Afficher plusieurs fichiers avec la commande head
head peut afficher plusieurs fichiers à la fois.
Pour cela, indiquez les noms des fichiers en les espaçant.
Par exemple pour afficher les deux premières lignes des fichiers rose-tatoo.txt et test.txt :
head -n 2 rose-tatoo.txt test.txt
Les noms des fichiers s’affichent en en-tête ==> fichier <== avec le contenu.
Traiter l’en-tête dans la sortie
La commande Head imprime le nom du fichier comme en-tête au-dessus de la sortie de chaque fichier pour les séparer.
Si vous ne voulez pas que la commande head affiche le nom du fichier, ajoutez l’option -q :
head -q -n 2 rose-tatoo.txt test.txt
A l’inverse quand vous travaillez avec un seul fichier, si vous souhaitez que l’en-tête avec le nom du fichier apparaisse, ajoutez l’option -v :
head -v -n 2 rose-tatoo.txt
==> rose-tatoo.txt <==
1 The pictures tell the story
2 This life had many shades
Afficher un nombre spécifique d’octets / caractères d’un fichier
Si vous souhaitez imprimer un nombre spécifique d’octets d’un fichier, vous pouvez utiliser l’option -c suivi du numéro.
Normalement, la taille d’un caractère est un octet. Donc, vous pouvez y penser comme imprimant un certain nombre de caractères.
Les caractères espaces ou tabulations sont comptés dedans.
Par exemple pour afficher les 30 premiers caractères d’un fichier :
head -c30 rose-tatoo.txt
Vous pouvez également exclure un nombre spécifique d’octets à la fin du fichier.
Pour ce faire, spécifiez une valeur négative à l’option -c.
Par exemple pour exclure les 35 derniers caractères d’un fichier :
head -c -35 rose-tatoo.txt
Afficher les N lignes d’un fichier en combinant les commandes head et tail
Et si vous voulez afficher n nombre de lignes au milieu d’un fichier?
Par exemple, si vous souhaitez afficher les lignes de 5 à 10 de fichier, vous pouvez combiner la commande head avec la commande tail.
Comme notre fichier fait 14 lignes, cela affiche la 5e ligne.
head -n 10 rose-tatoo.txt | tail -n +5
5 That smoldered in its tray
6 Down a little something and then be on my way
7
8 I traveled far and wide
9 And laid this head in many ports
10 I was guided by a compass
La commande Head imprime les 10 premières lignes du fichier. Ensuite, la commande tail prend cette sortie et imprime toutes les lignes à partir du numéro de ligne 5. Cela vous donne les lignes de 5 à 10.
Si vous voulez simplement afficher la nième ligne, vous pouvez le faire en combinant head et tail à nouveau.
head -n 15 rose-tatoo.txt | tail -n 1
15 So I wouldn't be alone
Ainsi, la commande de tête imprime les 15 premières lignes du fichier, puis la commande queue imprime la dernière ligne de cette sortie. Ainsi, vous obtenez la 15ème ligne.
Liens
- 12 exemples pour utiliser la commande cat sur Linux
- 6 exemples pour utiliser la commande tail sur Linux
- Comment utiliser la commande less sur Linux avec des exemples
- La commande cut de Linux : utilisation et exemples
- Comment utiliser la commande AWK avec des exemples
- Commande sed : utilisation et exemples
- 12 exemples de commandes grep sur Linux
- La commande TR : utilisations et exemples
- La commande echo : utilisations et exemples
- La commande sort Linux : utilisations et exemples
- La commande join Linux : utilisations et exemples