Créa fichier batch : renommage de fichiers
Fermé
Gizmil
Messages postés
706
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
3 octobre 2022
-
15 oct. 2011 à 16:05
Bayamin Messages postés 58 Date d'inscription dimanche 9 décembre 2007 Statut Membre Dernière intervention 12 août 2015 - 16 oct. 2011 à 14:09
Bayamin Messages postés 58 Date d'inscription dimanche 9 décembre 2007 Statut Membre Dernière intervention 12 août 2015 - 16 oct. 2011 à 14:09
A voir également:
- Créa fichier batch : renommage de fichiers
- Fichier rar - Guide
- Fichier batch - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Ouvrir fichier .bin - Guide
3 réponses
Bayamin
Messages postés
58
Date d'inscription
dimanche 9 décembre 2007
Statut
Membre
Dernière intervention
12 août 2015
17
Modifié par Bayamin le 15/10/2011 à 21:12
Modifié par Bayamin le 15/10/2011 à 21:12
Et voilà :
Pour les puristes c'est peut être pas fait dans les règles de l'art ( à base de goto, leur bête noire en général) mais ça a le mérite de marcher (chez moi en tout cas).
Faites bien attention à ce que les noms des fichiers ne comportent pas d'espace sinon ça ne marche pas.
Cordialement.
@echo off goto for :actiona set A=%1 set path=%3 set /A compteura=1 if "%A:~0,4%"=="IMG_" ( goto testa ) else ( goto fintest ) :testa if EXIST "%path%photo_%compteura%.jpg" ( goto incrementationa ) else ( rename "%2" "photo_%compteura%.jpg" & goto fintest) :incrementationa set /A compteura+=1 goto testa :actionb set B=%1 set path=%3 set /A compteurb=1 if "%B:~0,4%"=="mont" ( goto testb ) else ( goto fintest ) :testb if EXIST "%path%montage_%compteurb%.psd" ( goto incrementationb ) else ( rename "%2" "montage_%compteurb%.psd" & goto fintest) :incrementationb set /A compteurb+=1 goto testb :for For /F %%i in ('dir /b/s/A-d') do set arg1=%%~nxi & set path=%%~dpi & call :actiona %%arg1%% %%i %%path%% For /F %%i in ('dir /b/s/A-d') do set arg1=%%~nxi & set path=%%~dpi & call :actionb %%arg1%% %%i %%path%% echo. echo. echo. echo. echo. echo. echo. echo. echo. echo ************************************ echo ********** tache terminee ********** echo ************************************ echo. echo. echo. echo. echo. echo. echo. pause :fintest
Pour les puristes c'est peut être pas fait dans les règles de l'art ( à base de goto, leur bête noire en général) mais ça a le mérite de marcher (chez moi en tout cas).
Faites bien attention à ce que les noms des fichiers ne comportent pas d'espace sinon ça ne marche pas.
Cordialement.
Gizmil
Messages postés
706
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
3 octobre 2022
65
Modifié par Gizmil le 16/10/2011 à 01:44
Modifié par Gizmil le 16/10/2011 à 01:44
Bayamin, je tiens à te remercier, tu viens grandement de me faciliter la vie !! (-:
Ca va être impeccable, à présent, pour moi bosser ! (-;
Juste une petite chose : comme je l'avais fais remarquer, je n'aurais jamais qu'un seul fichier psd dans mes dossier donc pas la peine de les incrémenter numériquement. En fait, j'ai besoin des fichiers psd avec le nom "montage.psd" mais, bon, c'est pas grave, j'ai supprimé la variable compteur dans ton script. Je ne sais pas si c'est très approprié mais ça donne ça :
En tous cas, ça marche, c'est ce qui compte ! Encore merci pour ton coup de main parce que ça fait plusieurs jours que je galère pour trouver une solution à ma méthode de travail ! lol
Bref, un tout grand merci ! (-;
Ca va être impeccable, à présent, pour moi bosser ! (-;
Juste une petite chose : comme je l'avais fais remarquer, je n'aurais jamais qu'un seul fichier psd dans mes dossier donc pas la peine de les incrémenter numériquement. En fait, j'ai besoin des fichiers psd avec le nom "montage.psd" mais, bon, c'est pas grave, j'ai supprimé la variable compteur dans ton script. Je ne sais pas si c'est très approprié mais ça donne ça :
:testb if EXIST "%path%montage.psd" ( goto incrementationb ) else ( rename "%2" "montage.psd" & goto fintest)
En tous cas, ça marche, c'est ce qui compte ! Encore merci pour ton coup de main parce que ça fait plusieurs jours que je galère pour trouver une solution à ma méthode de travail ! lol
Bref, un tout grand merci ! (-;
Bayamin
Messages postés
58
Date d'inscription
dimanche 9 décembre 2007
Statut
Membre
Dernière intervention
12 août 2015
17
16 oct. 2011 à 14:09
16 oct. 2011 à 14:09
En fait, tu peux directement virer
et le remplacer par :
C'est plus propre et ça économise un processus de test et donc un peu de mémoire (je ne peux pas tester car je ne suis pas chez moi mais ça devrait marcher).
A +
if EXIST "%path%montage_%compteurb%.psd" ( goto incrementationb ) else ( rename "%2" "montage_%compteurb%.psd" & goto fintest)
et le remplacer par :
rename "%2" "montage.psd" goto fintest
C'est plus propre et ça économise un processus de test et donc un peu de mémoire (je ne peux pas tester car je ne suis pas chez moi mais ça devrait marcher).
A +