La commande cat (concatenate files) permet différentes fonctions dont la concaténation et l’affichage de contenu de fichiers. Elle ne dispose pas de beaucoup d’options, son affichage est brut.
Afficher un fichier
Si l’on souhaite par exemple afficher le contenu d’un fichier nommé monfichier, alors il suffit simplement de taper la commande cat suivante :
cat monfichier
Affichage d’un fichier page par page (ou ligne par ligne)
Vous l’aurez sans doute remarqué lorsqu’on affiche un fichier de plusieurs page à l’aide de la commande cat, toutes les pages de ce dernier défile à l’écran sans qu’on est la possibilité de stopper ce défilement. Pour afficher un fichier page par page, il est nécessaire d’utiliser conjointement la commande cat et la commande more. La commande more va permettre le défilement de l’affichage ligne par ligne (grâce à la touche entrée du clavier) ou page par page (grâce à la touche espace). Voici un exemple ci dessous :
cat monfichier | more
Nous utilisons ici l’opérateur pipe représenté par le caractère « | », ce dernier permet de rediriger la sortie standard de la commande cat vers l’entrée standard de la commande more. La première page du fichier s’affiche alors à l’écran et nous pouvons faire défiler le fichier, ligne par ligne, grâce à la touche « entrée » ou, page par page, grâce à la touche « espace ».
Afficher les numéros de ligne
La commande cat dispose de l’option –number ou -n permettant d’afficher les numéros de ligne d’un fichier. Exemple :
cat -n monfichier
Il est possible également grâce à l’option « -b » de n’afficher que les numéros des lignes non vides.
cat -b monfichier
Ne pas afficher les lignes vides (retour à la ligne) répétées
La commande cat dispose de l’option –squeeze-blank ou -s qui permet de supprimer les sauts de ligne excédentaires (supérieur à un). Je m’explique, si il y a par exemple cinq sauts de ligne à la suite, la commande cat n’en affichera qu’un seul.
cat -s monfichier
Afficher le contenu de tous les fichiers ayant une extension particulière
Il est possible et très utile d’utiliser les expressions régulières avec la commande cat, parfois il peut nous arriver de souhaiter afficher le contenu de plusieurs fichiers ayant une extension particulière. Par exemple si l’on veut afficher tous les fichiers ayant l’extension ‘.cc’ on peut utiliser la commande suivante :
cat *.cc
Concaténer le contenu de deux fichiers
On peut grâce à la commande cat concaténer deux fichiers, pour cela nous utilisons l’opérateur de redirection « > » . Nous allons rediriger la sortie standard dans un fichier cible. Un exemple sera plus claire. Nous avons deux fichiers nommés ‘fichier1′ et ‘fichier2′, nous souhaitons créer ‘fichier3′ qui sera la concaténation des deux autres. Nous utilisons pour cela la commande suivante :
cat fichier1 fichier2 > fichier3
Au lieu d’afficher le contenu du ‘fichier1′ puis du ‘fichier2′ à l’écran (dit autrement ‘sortie standard’) le résultat est mis dans ‘fichier3′ grâce à l’opérateur de redirection représenté par le caractère « > ».
Afficher les caractères de tabulation
Lors de la programmation de certains script shell, il peut arriver que la présence du caractère tabulation soit gênante. La commande cat donne la possibilité grâce à son option « –show-tabs » ou « -T » de représenter les tabulation par la chaîne de caractères : ^|
cat -T
Afficher l’aide mémoire de la commande cat
Toutes les commandes Linux dispose d’un aide mémoire.
cat --help