Pour les nostalgiques du DOS

Fermé
JLL - 25 nov. 2003 à 08:30
 jmb - 25 nov. 2003 à 16:27
Bonjour,
Je souhaite écrire un fichier de commandes DOS qui réalise les traitements suivants :
1>Récupération d'un fichier de type ZIP dans un répertoire
2>Dézipper le fichier
3>Renommer les fichiers dezippes de la façon suivante :
Nom du fichier = Nom du fichier zip + compteur
4>Recopier le fichier renommé dans un répertoire de travail


ex) 3 répertoires
LIV : contient le fichier z1.zip contenant f1.xlm et f2.xlm
TMP: contient les fichiers dézippés f1.xlm et f2.xlm
DES: contient les fichiers renommés : z1.f1.xlm et z1.f2.xlm

Lancement : $test liv zip
(Argument 1 : repertoire de livraison
Argument 2 : type des fichiersZIP)
Ps : La difficulté pour moi est de procéder au renommage du fichier

Programme 1 : test.bat appelle programme 2 process.bat
REM controle existence repertoire de livraison
if exist c:\%1\nul goto rep_ok
REM repertoire de livraison non trouve
:rep_non_ok:
echo repertoire NOK
goto fin
REM repertoire de livraison trouve
:rep_ok
echo repertoire OK
REM controle existence de fichiers zip
cd LIV
:process
FOR %%f in (*.%2) do call C:\process.bat %%f

:fin
cd ..


Programme 2 : process.bat
echo traitement du fichier %1
copy C:\unzip.exe C:\liv
unzip %1
REM Je souhaite renommer le fichier mais je n'ai pas la solution
for %%g in (*.xlm) do ???????

1 réponse

Dur dur de se remettre là-dedans !
Ce Dos est déjà trop difficile pour moi.
T'es sûr qu'il n'y a pas d'autres solutions plus... modernes ?
Pour te rassurer, je n'en vois pas :)
Bon courage.
0