Bonjour,
je vous fais grâce du laïus du débutant qui n'y arrive pas...
Je souhaiterais générer des fichiers txt à partir d'un ENORME fichier data.txt dont chaque ligne commence par une clef
Extrait du fichier data.txt (séparateur = " "):
398227A111 AAE E XS100E XS1001
398227A112 AAE E XS100E XS1002
398227A113 AAE E XS100E XS1003
398227A114 AAE E XS100E XS1004
398227A115 AAE E XS100E XS1005
398227A116 AAE E XS100E XS1006
398227A117 AAE E XS100E XS1007
398227A118 AAE E XS100E XS1008
398227A119 AAE E XS100E XS1009
398227A120 AAE E XS1001010
398227A121 AAE E XS1001011
398227B122 AAE E XS1001012
398227B123 AAE E XS1001013
398227B124 AAE E XS1001014
398227B125 AAE E XS1001015
398228A669 AAE E XS1001016
398228A670 AAE E XS1001017
398228A671 AAE E XS1001018
398228A672 AAE E XS1001019
398228A673 AAE E XS1001020
398228A674 AAE E XS1001021
398228A675 AAE E XS1001022
398228B676 AAE E XS1001023
398228B677 AAE E XS1001024
Je souhaiterais dispatcher ces données dans des fichiers différents en les triant sur la base des 6 premiers digits du code de début de ligne. Pour cela, j'ai généré une table liste.csv comme suit:
4001;398227
4002;398228
4003;398229
4004;398230
4005;398231
4006;398232
L'objectif est donc d'obtenir des fichiers comme par exemple le fichier4001.txt qui contiendrait donc les lignes suivantes:
398227A111 AAE E XS100E XS1001
398227A112 AAE E XS100E XS1002
398227A113 AAE E XS100E XS1003
398227A114 AAE E XS100E XS1004
398227A115 AAE E XS100E XS1005
398227A116 AAE E XS100E XS1006
398227A117 AAE E XS100E XS1007
398227A118 AAE E XS100E XS1008
398227A119 AAE E XS100E XS1009
398227A120 AAE E XS1001010
398227A121 AAE E XS1001011
398227B122 AAE E XS1001012
398227B123 AAE E XS1001013
398227B124 AAE E XS1001014
398227B125 AAE E XS1001015
Désolé, je suis un peu long mais c'est pour mieux définir la situation.
J'ai donc essayé un batch à partir de ce que j'ai trouvé:
1 2 3 4 5 6 7
| for /f "tokens=1,2 delims=;" %%i in (liste.csv) do (
for /f "tokens=*" %%A in (data.txt) do (
findstr /b /c:'%%j' do (
echo %%A>>fichier%%i.txt
)
)
) |
...et ça marche pas!
Un petit coup de main de pro serait le bienvenu!
Partager