MS-DOS BATCH pour renommage automatique des nouveaux fichiers dans un répertoire
3 réponses
Dorice EGBOHO
BONJOUR A TOUS
Je dispose d'un r=E9pertoire MSC2 sur mon serveur WINDOWS.
Le r=E9pertoire MSC2 re=E7oit toutes les 5 minutes un fichier de cette
forme FNYYYYMMDDHHMMSSXXXXGCDR dans lequel YYYY repr=E9sente l'ann=E9e, MM
le mois, DD le jour, HH l'heure, MM la minute, SS la seconde, XXXX le
num=E9ro d'ordre qui peut varier de 0000 =E0 9999. Le nom de chaque
fichier est unique.
Je voudrais un batch DOS qui renomme chaque nouveau fichier sous la
forme CIBPAMX_BENLI_YYYYMMDDHHMMSSXXXXGCDR
J'ai =E9cris ceci :
@echo off
fichier : copienewversion10092011.bat
cd E:MSC2
set new=3DCIBPANX_BENLI_
for %%x in (FN*) do rename "%%~fx" "%new%%%~nxx"
exit
Que te gêne t'il ? Tu n'enlève pas les deux premiers caractères FN du nom ?
Je ne connais pas l'astuce pour utiliser un %Variable:~2% avec un paramètre de boucle
Sinon tu peux simplifier ta ligne for en et il me semble que tu ne peux pas utiliser de %variable% a l'intérieur d'une boucle ( ou a la sortie )
for %%x in (FN*) do ren "%%x" "CIBPANX_BENLI_%%x"
LeLapin
Dorice EGBOHO a tapoté du bout de ses petites papattes :
BONJOUR A TOUS Je dispose d'un répertoire MSC2 sur mon serveur WINDOWS.
Le répertoire MSC2 reçoit toutes les 5 minutes un fichier de cette forme FNYYYYMMDDHHMMSSXXXXGCDR dans lequel YYYY représente l'année, MM le mois, DD le jour, HH l'heure, MM la minute, SS la seconde, XXXX le numéro d'ordre qui peut varier de 0000 à 9999. Le nom de chaque fichier est unique.
Je voudrais un batch DOS qui renomme chaque nouveau fichier sous la forme CIBPAMX_BENLI_YYYYMMDDHHMMSSXXXXGCDR
J'ai écris ceci :
@echo off fichier : copienewversion10092011.bat cd E:MSC2 set new=CIBPANX_BENLI_ for %%x in (FN*) do rename "%%~fx" "%new%%%~nxx" exit
mais cela ne marche pas.
ren FN* CIBPAMX_BENLI_* ne marche pas ?
-- LeLapin
Dorice EGBOHO a tapoté du bout de ses petites papattes :
BONJOUR A TOUS
Je dispose d'un répertoire MSC2 sur mon serveur WINDOWS.
Le répertoire MSC2 reçoit toutes les 5 minutes un fichier de cette
forme FNYYYYMMDDHHMMSSXXXXGCDR dans lequel YYYY représente l'année, MM
le mois, DD le jour, HH l'heure, MM la minute, SS la seconde, XXXX le
numéro d'ordre qui peut varier de 0000 à 9999. Le nom de chaque
fichier est unique.
Je voudrais un batch DOS qui renomme chaque nouveau fichier sous la
forme CIBPAMX_BENLI_YYYYMMDDHHMMSSXXXXGCDR
J'ai écris ceci :
@echo off
fichier : copienewversion10092011.bat
cd E:MSC2
set new=CIBPANX_BENLI_
for %%x in (FN*) do rename "%%~fx" "%new%%%~nxx"
exit
Dorice EGBOHO a tapoté du bout de ses petites papattes :
BONJOUR A TOUS Je dispose d'un répertoire MSC2 sur mon serveur WINDOWS.
Le répertoire MSC2 reçoit toutes les 5 minutes un fichier de cette forme FNYYYYMMDDHHMMSSXXXXGCDR dans lequel YYYY représente l'année, MM le mois, DD le jour, HH l'heure, MM la minute, SS la seconde, XXXX le numéro d'ordre qui peut varier de 0000 à 9999. Le nom de chaque fichier est unique.
Je voudrais un batch DOS qui renomme chaque nouveau fichier sous la forme CIBPAMX_BENLI_YYYYMMDDHHMMSSXXXXGCDR
J'ai écris ceci :
@echo off fichier : copienewversion10092011.bat cd E:MSC2 set new=CIBPANX_BENLI_ for %%x in (FN*) do rename "%%~fx" "%new%%%~nxx" exit