[SCRIPT DOS] Concaténation et boucle for

Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour à tous

J'ai un problème avec un script de concaténation:

J'ai x fichiers texte dans un premier dossier (rep1 par exemple) j'ai x (le même nombre que l'autre) fichiers dans un second dossier et j'aimerai faire une concaténation du texte se trouvant dans ces dossiers comme suit:

rep1/fichier1 "une tabulation" rep2/fichier1
rep1/fichier2 "une tabulation" rep2/fichier2
......
...
rep1/fichierx "une tabulation" rep2/fichierx

J'ai donc utilisé la commande suivante:

FOR %%F IN (*.txt) DO COPY /B rep1\%%F +rep2\%%F=result.txt

Le problème, c'est qu'à la fin, je n'ai qu'une ligne... A chaque fois que le prog fait un tour dans la boucle FOR, il écrase l'ancien contenu du
fichier result.txt.

Quelqu'un aurait-il une solution à cela ?

Merci d'avance
--
Seules les forces obscures peuvent ouvrir et fermer les portes de Silent Hill
Configuration: Windows XP
Internet Explorer 6.0

7 réponses

  1. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    Salut,

    Pourquoi tu utilises une boucle for pour ça?

    COPY /B rp1\*.txt+rp2\*.txt result.txt non?

    0
  2. Chacual Messages postés 230 Statut Membre 150
     
    Il te manque juste une commande dans ta boucle qui sera chargée d'ajouter le contenu de result.txt à la fin du fichier final mais je ne sais pas quelle est la commande à utiliser... Ce ne serait pas une option de COPY par hasard ?
    0
  3. Utilisateur anonyme
     
    teebo: Non, ça ne marche pas, cela me met:

    rep1/fichier1 rep2/fichier1 rep1/fichier2 rep2/fichier2

    Chacual: si une telle commande existe, l'aide de ms-dos ne le cite pas...
    0
  4. Utilisateur anonyme
     
    Si aucune solution en commande MS-DOS n'existe, il n'y aurait pas une solution en langage C ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    Mouarf, EUREKA, je suis un peu bête:

    Il faut juste penser à créer ton fichier result.txt (vide) avant.

    FOR %%F IN (*.txt) DO COPY /B result.txt+rep1\%%F +rep2\%%F=result.txt 
    0
  7. Utilisateur anonyme
     
    Cool! Merci ça marche!
    0
  8. Utilisateur anonyme
     
    ça fonctionne mais il me rajoute un "y" avec deux points dessus à la fin du fichier... Pourquoi ? Et surtout comment éviter ça ?
    0