La commande cat est très utile sous Linux. Il a trois fonctions principales liées à la manipulation des fichiers texte: les créer, les afficher et les combiner.
Nous avons discuté de l’utilisation de la commande cat (entre autres) pour créer et afficher des fichiers texte sur la ligne de commande sous Linux. Mais supposons que vous ayez trois fichiers texte: file1.txt, file2.txt et file3.txt. Vous voulez les combiner (ou) en un seul fichier texte contenant les informations des trois, dans cet ordre. Vous pouvez également le faire avec la commande cat.
Ouvrez simplement un terminal et tapez la commande suivante:
cat file1.txt file2.txt file3.txt
Évidemment, remplacez les noms de fichiers dans l’exemple ci-dessus par les vôtres.
Le contenu combiné des trois fichiers texte apparaîtra dans votre terminal.
En règle générale, cependant, vous voudrez probablement combiner ces fichiers texte dans un autre fichier texte, pas seulement imprimer les résultats à l’écran. Heureusement, c’est très simple. Tout ce que vous avez à faire est d’ajouter un symbole de redirection de sortie (>
) après la liste des fichiers concaténés, puis spécifiez le nom du fichier texte final.
cat file1.txt file2.txt file3.txt > file4.txt
REMARQUE: le fichier répertorié après le symbole de redirection de sortie sera écrasé s’il existe déjà. Soyez donc prudent lorsque vous spécifiez le nom du fichier texte combiné. Nous vous montrerons plus loin dans cet article comment ajouter des fichiers à la fin d’un fichier existant.
Si vous ouvrez file4.txt (soit avec la commande cat, soit avec l’éditeur de texte de votre choix), vous devriez constater qu’il contient le texte des trois premiers fichiers texte.
Si vous combinez des listes d’éléments de plusieurs fichiers et que vous souhaitez les classer par ordre alphabétique dans le fichier combiné, vous pouvez trier les éléments combinés dans le fichier résultant. Pour ce faire, entrez la base cat
la commande que nous vous avons montrée précédemment suivie de la commande pipe (|) et du sort
commander. Ensuite, tapez le symbole de redirection de sortie (>
) suivi du nom du fichier dans lequel vous souhaitez copier le texte combiné. Toutes les lignes de texte du fichier de résultat seront triées par ordre alphabétique.
cat file1.txt file2.txt file3.txt | sort > file4.txt
Comme nous l’avons mentionné précédemment, il existe également un moyen d’ajouter des fichiers à la fin d’un fichier existant. Tapez le cat
commande suivie du fichier ou des fichiers que vous souhaitez ajouter à la fin d’un fichier existant. Ensuite, tapez deux symboles de redirection de sortie (>>
) suivi du nom du fichier existant auquel vous souhaitez ajouter.
cat file5.txt >> file4.txt
Si vous souhaitez ajouter un peu de nouveau texte à un fichier texte existant, vous utilisez le cat
commande pour le faire directement depuis la ligne de commande (au lieu de l’ouvrir dans un éditeur de texte). Tapez le cat
commande suivie du symbole de redirection de double sortie (>>
) et le nom du fichier auquel vous souhaitez ajouter du texte.
cat >> file4.txt
Un curseur apparaîtra sur la ligne suivante sous l’invite. Commencez à taper le texte que vous souhaitez ajouter au fichier. Lorsque vous avez terminé, appuyez sur Entrée après la dernière ligne, puis appuyez sur Ctrl + D pour copier ce texte à la fin du fichier et quitter cat.
Si vous vous retrouvez avec un fichier très long une fois que vous avez combiné vos fichiers texte, vous pouvez utiliser le symbole du tube avec la commande less lors de l’affichage du fichier dans la fenêtre Terminal. Par exemple, cat file4.txt | less
. Nous discutons de l’utilisation de la commande less dans cet article.