J'ai 50 à 60 fichiers dans un répertoire que je dois concaténer régulièrement dans un seul fichier.
J'ai pensé à utiliser notepad ++ en pensant qu'il existait probablement un plug-in qui aiderait, mais que je n'ai pas réussi à trouver.
D'autres pensées?
En supposant qu'il s'agisse de fichiers texte (puisque vous utilisez notepad ++) et que vous utilisez Windows, vous pouvez créer un simple script batch pour les concaténer.
Par exemple, dans le répertoire contenant tous les fichiers texte, exécutez les opérations suivantes:
for %f in (*.txt) do type "%f" >> combined.txt
Cela fusionnera tous les fichiers correspondant à * .txt en un seul fichier appelé combiné.txt.
Pour plus d'informations:
Utilisez la commande "Copier" de Windows.
C:\Users\dan>help copy
Copies one or more files to another location.
COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B]
[+ source [/A | /B] [+ ...]] [destination [/A | /B]]
source Specifies the file or files to be copied.
/A Indicates an ASCII text file.
/B Indicates a binary file.
/D Allow the destination file to be created decrypted
destination Specifies the directory and/or filename for the new file(s).
/V Verifies that new files are written correctly.
/N Uses short filename, if available, when copying a file with
a non-8dot3 name.
/Y Suppresses prompting to confirm you want to overwrite an
existing destination file.
/-Y Causes prompting to confirm you want to overwrite an
existing destination file.
/Z Copies networked files in restartable mode.
/L If the source is a symbolic link, copy the link to the
target
instead of the actual file the source link points to.
The switch /Y may be preset in the COPYCMD environment variable.
This may be overridden with /-Y on the command line. Default is
to Prompt on overwrites unless COPY command is being executed from
within a batch script.
**To append files, specify a single file for destination, but
multiple files for source (using wildcards or file1+file2+file3
format).**
Donc dans votre cas:
copier * .txt destination.txt
Concaténera tous les fichiers .txt par ordre alphabétique dans destination.txt
Merci d'avoir demandé, j'ai appris quelque chose de nouveau!
copy *.txt all.txt
Cela concaténera tous les fichiers texte du dossier dans un fichier texte all.txt.
Si vous avez d'autres types de fichiers, comme des fichiers SQL
copy *.sql all.sql
Oui, il existe un plugin nommé "combine" pour le Bloc-notes ++. Lien:. >> Le module Combiner pour le Bloc-notes ++
Vous pouvez l'installer via le gestionnaire de plugins. Le bénéfice supplémentaire de ce plugin est: "Vous pouvez conserver la séquence de fichiers lors de la fusion, cela dépend de la séquence des fichiers ouverts qui sont ouverts (voir les onglets)".
Si vous aimez faire cela pour les fichiers ouverts sur Notepad ++, vous pouvez utiliser le plugin Combine: http://www.scout-soft.com/combine/
vous pouvez utiliser un script PowerShell comme celui-ci
$sb = new-object System.Text.StringBuilder
foreach ($file in Get-ChildItem -path 'C:\temp\xx\') {
$content = Get-Content -Path $file.fullname
$sb.Append($content)
}
Out-File -FilePath 'C:\temp\xx\c.txt' -InputObject $sb.toString()
Dans Windows, j'utilise une simple commande dans un fichier de commandes et une tâche planifiée pour conserver toutes les informations dans un seul fichier. Assurez-vous de choisir un autre chemin d'accès au fichier de résultat, sinon vous aurez des données en double.
type PathToOriginalFiles\*. Extension> AnotherPathToResultFile\NameOfTheResultFile.Extension
Si vous avez besoin de joindre beaucoup de fichiers csv, le mieux est d’avoir l’en-tête dans un seul fichier portant le nom 0header.csv , ou un autre nom, afin qu’il soit toujours le premier fichier liste, et assurez-vous de programmer tous les autres fichiers csv pour qu’ils ne contiennent pas d’en-tête.
J'ai utilisé ce script sur windows PowerShell:
ForEach ($f in get-ChildItem *.sql) { type "$f" >> all.sql }
Il existe un outil tiers pratique appelé FileMenu Tools, qui donne à plusieurs outils du clic droit une extension de Windows Explorer.
Split fichier/Join Parts en fait partie et annule exactement ce que vous recherchez.
Vérifiez-le à l’adresse http://www.lopesoft.com/fr/filemenutools . Bien sûr, il s’agit de Windows uniquement, car les environnements Unix disposent déjà de nombreux outils pour cela.
Je sais que ceci est un ancien post, mais je l’ai trouvé et ensuite trouvé quelqu'un qui a suggéré Total Mail Converter. J'ai été capable de convertir mon dossier avec 2k fichiers .msg en .txt. Il vous permet également de convertir en PDF et en d'autres formats populaires.
C'est un excellent outil que je suis heureux de voir suggéré par quelqu'un car cela me fera gagner plusieurs jours.
FYI - Mon projet combine les fichiers .msg en un seul fichier texte afin que je puisse exécuter un script pour extraire certaines informations des fichiers (par exemple, email et liens). Au lieu de 2k fichiers, je peux travailler avec un seul.