GNU/Linux >> Tutoriels Linux >  >> Linux

Comment ajouter le contenu de plusieurs fichiers dans un seul fichier

Vous avez besoin du cat (abréviation de concaténer), avec redirection shell (> ) dans votre fichier de sortie

cat 1.txt 2.txt 3.txt > 0.txt

Une autre option, pour ceux d'entre vous qui tombent encore sur ce message comme moi, est d'utiliser find -exec :

find . -type f -name '*.txt' -exec cat {} + >> output.file

Dans mon cas, j'avais besoin d'une option plus robuste qui examinerait plusieurs sous-répertoires, j'ai donc choisi d'utiliser find . Décomposer :

find .

Regardez dans le répertoire de travail actuel.

-type f

Uniquement intéressé par les fichiers, pas les répertoires, etc.

-name '*.txt'

Réduire le jeu de résultats par nom

-exec cat {} +

Exécutez la commande cat pour chaque résultat. "+" signifie seulement 1 instance de cat est engendré (merci @gniourf_gniourf)

 >> output.file

Comme expliqué dans d'autres réponses, ajoutez le contenu cat-ed à la fin d'un fichier de sortie.


Linux
  1. Comment diviser un seul fichier en plusieurs fichiers en fonction des lignes

  2. Concaténer des fichiers spécifiques en un seul fichier ?

  3. Comment ajouter plusieurs lignes à un fichier ?

  4. Comment rechercher le contenu de plusieurs fichiers pdf ?

  5. Comment compresser tous les fichiers de tous les sous-répertoires dans un fichier compressé dans bash

Comment diviser un gros fichier d'archive en plusieurs petits fichiers à l'aide de la commande Split sous Linux

Comment joindre plusieurs lignes en une seule dans un fichier sous Linux

Comment fusionner plusieurs fichiers PDF en un seul PDF sous Linux

Comment joindre/fusionner plusieurs fichiers audio en un seul sous Linux

Comment faire écho dans le fichier

Comment voir le contenu des fichiers orc Hive sous Linux