Batch renommer plusieurs fichier par la date
blacksun
-
simo911 Messages postés 8 Statut Membre -
simo911 Messages postés 8 Statut Membre -
Bonjour,
je voulais créer un Batch pour renommer plusieurs fichiers dans un répertoire par la date et l'heure de sa création
quelque soit un *.VBS ou *.BAT.
Merci d'avance.
je voulais créer un Batch pour renommer plusieurs fichiers dans un répertoire par la date et l'heure de sa création
quelque soit un *.VBS ou *.BAT.
Merci d'avance.
Configuration: Windows XP Firefox 3.5.3
10 réponses
-
hello
l'heure et la date de création du fichier lui même ? -
Ce script va renommer tous les fichiers .bat (ou autre) en nom_date_heure.bat
faire des essais, quand même
en laissant l'echo de la dernière ligne, il va afficher ce qu'il fait. l'enlever pour renommer effectivement
@echo off set extension=bat setlocal enableDelayedExpansion rem rem dir /T:C pour avoir la date de création et non de modification rem for /F "tokens=1,2,3,*" %%a in ('dir /T:C *.%extension%^|findstr ".%extension%$"') do ( rem rem on transforme la date JJ/MM/AAAA et l'heure HH:MM en JJ-MM-AAAA et HH-MM rem parce que / et : sont interdits dans un nom de fichier rem set d=%%a set d=!d:/=-! set h=%%b set h=!h::=-! rem rem on recupère le nom du fichier sans l'extension rem set nom=%%~nd rem rem on renomme avec des " si il y a des noms avec espaces rem echo ren "%%d" "!nom!_!d!_!h!.%extension%") -
au debut du script j'ai mis
set extension=bat
donc il va renommer les fichiers .bat, il faut modifier cette ligne
set extension=vbs
pour renomme les fichiers .vbs
ou choisir une autre extension -
le script doit avoir .bat comme extension pour pouvoir s'exécuter
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
c'est pour voir ce qu'il va faire, enlever l'echo de la dernière ligne
echo ren "%%d" "!nom!_!d!_!h!.%extension%")
^^^-
je l'ai laissé comme ca mais ca ma rien donné
@echo off
set extension=mp3
setlocal enableDelayedExpansion
rem
rem dir /T:C pour avoir la date de création et non de modification
rem
for /F "tokens=1,2,3,*" %%a in ('dir /T:C *.%extension%^|findstr ".%extension%$"') do (
rem
rem on transforme la date JJ/MM/AAAA et l'heure HH:MM en JJ-MM-AAAA et HH-MM
rem parce que / et : sont interdits dans un nom de fichier
rem
set d=%%a
set d=!d:/=-!
set h=%%b
set h=!h::=-!
rem
rem on recupère le nom du fichier sans l'extension
rem
set nom=%%~nd
rem
rem on renomme avec des " si il y a des noms avec espaces
rem
-
-
il ne faut pas supprimer la dernière ligne mais juste l'echo au début
ren "%%d" "!nom!_!d!_!h!.%extension%") -
waw ca marche tres bien merci bccccccccp.
dis moi si je veux ajouter les socends aussi HH:MM:SS cmt dois je faire. -
les secondes ?
-
non, la commande dir ne donne pas les secondes
-