[DOS] concatenation

concatenation [DOS] - Shell/Batch - Programmation

Marsh Posté le 17-10-2003 à 00:47:21    

Salut,
Je voudrais creer un batch qui me lance un programme avec plusieur fichiers d'entree.
La syntaxe de cet executable est: executable.exe fich1,fich2,fich3,...
Ou fich1, fich2, .. sont les fichiers a traiter.
 
Je veux automatiser le traitement de tous les fichiers qui se trouve dans un meme dossier.
 
J'ai fait un petit batch qui liste tous les fichiers du repertoire et copie les noms dans un fichier liste:
    dir /b > list
Le probleme c'est que les noms de fichiers sont ecrit ligne par ligne et il faut que je les donne a mon executable sur une seule ligne separe par une virgule.
 
Comment transformer:
fich1
fich2
fich3
 
en:
fich1,fich2,fich3

Reply

Marsh Posté le 17-10-2003 à 00:47:21   

Reply

Marsh Posté le 17-10-2003 à 04:11:38    

Tu peux essayer d'utiliser une boucle for qui te listera les fichiers de ton repertoire et pour chaque tour de boucle, concatener le nom du fichier trouvé a une variable d'environnement
 
j'ai essayer un truc vite fait et ca a l'air de marcher a peu pres mais il faut utiliser 2 fichiers .bat:
 
fichier test.bat (le batch que tu lances directement dans le rep. de ton choix)


@echo off
rem - initialisation de la variable
set zzz=
FOR %%f IN (*.*) DO CALL set_zzz.bat %%f
rem - dans la ligne suivante, virer echo pour lancer  
rem - le programme prog.exe avec les parametres trouvés
echo c:\prog.exe%zzz%
pause


 
fichier set_zzz.bat (lancé auto. par test.bat)


set zzz=%zzz% %1,


 
y'a surement moyen de faire qqchose pour que ca marche avec un seul fichier .bat, et il faudra ensuite virer la derniere virgule ... (si ca se trouve ton prog .exe s'en fout donc ca marchera p-e)
 
JY.


---------------
www.alliancefrancophone.org ... Home is where the heart is
Reply

Marsh Posté le 17-10-2003 à 15:40:30    

Merci je vais demarrer autour de ca

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed