(modifié le 12 juin 2018 à 23:42)

Je vous présente aujourd'hui un petit script batch que j'ai écris il y a de ça quelques années.

Cette moulinette (script) permet de fusionner plusieurs fichiers CSV ensemble en ne gardant qu'une seule ligne d'en-têtes.

Moulinette

Et oui c'est son nom, la moulinette !

Alors bien sûr il faut que tous vos fichiers CSV aient la même ligne d'en-têtes (même ordre, même nombre, même contenu) :

Il suffit de déposer vos fichiers CSV dans le répertoire CSV_ENTREE et de lancer fusionner.bat

Vous récupèrerez dans le répertoire "SORTIE" le fichier combined.csv contenant toutes les données de vos CSV mais avec une seule ligne d'en-tête.

Attention : chaque lancement du script écrase le précédent fichier de sortie combined.csv

Si vous souhaitez traiter uniquement des fichiers ayant un suffixe particulier il faut remplacer cette ligne :

for %%i in ("CSV_ENTREE\*.csv") do (

par :

for %%i in ("CSV_ENTREE\prefixe*.csv") do (

Ne renommez évidemment aucun des 2 dossiers , sinon le script ne fonctionnera pas.

Conclusion

Que dire de plus ? ah si ! J'ai fait en sorte que le script fonctionne directement depuis sur un partage de fichier SMB (CIFS),  que ce soit un chemin UNC "\\serveur\partage" ou une lettre de lecteur réseau mappée.

Faites-en bon usage et signalez-vous en commentaire si ce script vous a été utile 🙂

Télécharger le script

Auteur : Mr Xhark

Fondateur du blog et passionné par les nouvelles techno, suivez-moi sur twitter