Fichier batch pour renommer fichiers
Gizmil
Messages postés
706
Date d'inscription
Statut
Membre
Dernière intervention
-
cellfride Messages postés 280 Date d'inscription Statut Membre Dernière intervention -
cellfride Messages postés 280 Date d'inscription Statut Membre Dernière intervention -
Salut à tous,
dans le cadre d'un job répétitif, j'aurais besoin d'un fichier batch qui effectue un petit travail pour moi ! Le souci, c'est que, personnellement, je n'y connais rien en programmation batch (ma formation se limite à ActionScript et PHP) !
Du coup, j'aimerais faire appel à vos lumières ! Est-ce que ce serait possible d'avoir un coup de main ?
Voici ce dont j'aurais besoin :
Dans un dossier racine, j'ai 120 dossiers nommés "page_001" à "page_120". Dans chacun de ces dossiers, on trouve un certain nombre de fichiers à renommer.
Voici le genre de fichier qu'on trouve dans mes dossiers "page_xxx" :
Voici comment j'aurais besoin qu'ils soient renommés :
Donc :
- les fichiers nommés "IMG_xxxx.JPG" deviennent "photo_xx.JPG"
- les fichiers nommés "montage_suitedecaracteresvariables.jpg" demeurent identiques
- les fichiers nommés "montage_suitedecaracteresvariables.psd" deviennent "montage.psd"
Est-ce possible, un script qui ferait ceci ? Merci !
dans le cadre d'un job répétitif, j'aurais besoin d'un fichier batch qui effectue un petit travail pour moi ! Le souci, c'est que, personnellement, je n'y connais rien en programmation batch (ma formation se limite à ActionScript et PHP) !
Du coup, j'aimerais faire appel à vos lumières ! Est-ce que ce serait possible d'avoir un coup de main ?
Voici ce dont j'aurais besoin :
Dans un dossier racine, j'ai 120 dossiers nommés "page_001" à "page_120". Dans chacun de ces dossiers, on trouve un certain nombre de fichiers à renommer.
Voici le genre de fichier qu'on trouve dans mes dossiers "page_xxx" :
page_001 | IMG_9130.JPG IMG_9133.JPG IMG_9137.JPG montage_33x28_3fen_sta_003.jpg montage_33x28_3fen_sta_003.psd page_002 | IMG_9256.JPG IMG_9720.JPG IMG_9432.JPG IMG_9444.JPG montage_33x28_4fen_sta_022.jpg montage_33x28_4fen_sta_022.psd page_003 | IMG_9333.JPG IMG_9358.JPG montage_33x28_2fen_sta_009b.jpg montage_33x28_2fen_sta_009b.psd
Voici comment j'aurais besoin qu'ils soient renommés :
page_001 | photo_01.JPG photo_02.JPG photo_03.JPG montage_33x28_2fen_sta_003.jpg montage.psd page_002 | photo_01.JPG photo_02.JPG photo_03.JPG photo_04.JPG montage_33x28_4fen_sta_022.jpg montage.psd page_003 | photo_01.JPG photo_02.JPG montage_33x28_2fen_sta_009b.jpg montage.psd
Donc :
- les fichiers nommés "IMG_xxxx.JPG" deviennent "photo_xx.JPG"
- les fichiers nommés "montage_suitedecaracteresvariables.jpg" demeurent identiques
- les fichiers nommés "montage_suitedecaracteresvariables.psd" deviennent "montage.psd"
Est-ce possible, un script qui ferait ceci ? Merci !
A voir également:
- Fichier batch pour renommer fichiers
- Fichier bin - Guide
- Fichier epub - Guide
- Renommer des fichiers en masse - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
11 réponses
salut
dis moi, quand tu dis "IMG_xxxx.JPG" deviennent "photo_xx.JPG" t'es obligé d'avoir un fichier qui a un tel nom qui devient un fichier un nom bien précis ( exemple il faut impérativement qui un fichier IMG_9130.JPG soit nommé photo_01.JPG ou est ce qu'on peut le nommé photo_03.JPG ou photo_02.JPG sans problème ?) car tes fichiers php pointent sur eux, non?
cordialement ?
dis moi, quand tu dis "IMG_xxxx.JPG" deviennent "photo_xx.JPG" t'es obligé d'avoir un fichier qui a un tel nom qui devient un fichier un nom bien précis ( exemple il faut impérativement qui un fichier IMG_9130.JPG soit nommé photo_01.JPG ou est ce qu'on peut le nommé photo_03.JPG ou photo_02.JPG sans problème ?) car tes fichiers php pointent sur eux, non?
cordialement ?
Salut, Cellfride ! Merci de t'intéresser à mon problème !
En fait, j'aurais besoin que les fichiers "IMG_xxxx.JPG" renommés en "photo_xx.JPG" soient numérotés dans l'ordre alphabétique initial des fichiers "IMG_xxxx.JPG".
Donc, si, par exemple, on a ceci :
IMG_0030.JPG
IMG_0050.JPG
IMG_0080.JPG
Ca devient ceci :
IMG_0030.JPG > photo_01.JPG
IMG_0050.JPG > photo_02.JPG
IMG_0080.JPG > photo_03.JPG
et non pas ceci, par exemple:
IMG_0030.JPG > photo_03.JPG
IMG_0050.JPG > photo_01.JPG
IMG_0080.JPG > photo_02.JPG
Et pour répondre à ta question : oui, j'ai besoin qu'il soient renommés de cette façon et dans l'ordre alphabétique/numérique car j'utilise ensuite un script Photoshop dessus pour faire entrer automatiquement mes photos dans des montages !
(-;
En fait, j'aurais besoin que les fichiers "IMG_xxxx.JPG" renommés en "photo_xx.JPG" soient numérotés dans l'ordre alphabétique initial des fichiers "IMG_xxxx.JPG".
Donc, si, par exemple, on a ceci :
IMG_0030.JPG
IMG_0050.JPG
IMG_0080.JPG
Ca devient ceci :
IMG_0030.JPG > photo_01.JPG
IMG_0050.JPG > photo_02.JPG
IMG_0080.JPG > photo_03.JPG
et non pas ceci, par exemple:
IMG_0030.JPG > photo_03.JPG
IMG_0050.JPG > photo_01.JPG
IMG_0080.JPG > photo_02.JPG
Et pour répondre à ta question : oui, j'ai besoin qu'il soient renommés de cette façon et dans l'ordre alphabétique/numérique car j'utilise ensuite un script Photoshop dessus pour faire entrer automatiquement mes photos dans des montages !
(-;
salut et surtout désolé pour le retard, c'est à cause de mon taf
si ma remarque est bonne, d'après tes exemples je vois que toutes les images de type "IMG_xxxx.JPG" ont des extensions en majuscule ".JPG", alors que les images genre "montage_xxx_xxxx_xxx_xxxx.jpg" ont toujours une extension en minuscule ".jpg", j'en déduis c'est toujours le cas ?? en tout cas dans ton exemple ça l'est, si oui ça peut nous aider, car sans rien te promettre j'essaye de te concocter un batch pour ton problème :)
cordialement
si ma remarque est bonne, d'après tes exemples je vois que toutes les images de type "IMG_xxxx.JPG" ont des extensions en majuscule ".JPG", alors que les images genre "montage_xxx_xxxx_xxx_xxxx.jpg" ont toujours une extension en minuscule ".jpg", j'en déduis c'est toujours le cas ?? en tout cas dans ton exemple ça l'est, si oui ça peut nous aider, car sans rien te promettre j'essaye de te concocter un batch pour ton problème :)
cordialement
Merci, Cellfride ! (-:
En fait, je vais utiliser des scripts Photoshop par la suite sur mes dossiers et je pense que pour aller chercher un fichier à partir d'un nom donné, Photoshop ne fait pas de distinction entre une casse majuscule et minuscule dans l'extension. Donc, à priori, le fichier jpg final peut avoir une extension en majuscule ou minuscule, au choix.
Pour ce qui est des fichiers-source, je les reçois généralement avec des extensions en majuscule de la part de mon employeur donc tu peux considérer qu'elles sont en majuscule. Il arrive qu'il y aies des extension minuscules mais c'est rare et, si c'est le cas, je les renommerais avant le travail de déplacement vers les 120 dossiers.
Voilà ! (-;
En fait, je vais utiliser des scripts Photoshop par la suite sur mes dossiers et je pense que pour aller chercher un fichier à partir d'un nom donné, Photoshop ne fait pas de distinction entre une casse majuscule et minuscule dans l'extension. Donc, à priori, le fichier jpg final peut avoir une extension en majuscule ou minuscule, au choix.
Pour ce qui est des fichiers-source, je les reçois généralement avec des extensions en majuscule de la part de mon employeur donc tu peux considérer qu'elles sont en majuscule. Il arrive qu'il y aies des extension minuscules mais c'est rare et, si c'est le cas, je les renommerais avant le travail de déplacement vers les 120 dossiers.
Voilà ! (-;
@ECHO OFF
TITLE Cellfride "Easy rename" pour Gizmil
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO º º
@ECHO º Cellfride "Easy rename" pour Gizmil º
@ECHO º º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
SETLOCAL ENABLEDELAYEDEXPANSION
IF EXIST %temp%\liste.tmp DEL %temp%\liste.tmp
IF EXIST %temp%\temp.tmp DEL %temp%\temp.tmp
IF EXIST %temp%\trie.tmp DEL %temp%\trie.tmp
SET /A NumDossier=1
FOR /F %%X IN ('DIR /B /A:D ^| FIND /I "page_"') DO (
@ECHO %%X>>%temp%\liste.tmp
@ECHO.
SET /A NumDossier=!NumDossier!+1
)
FOR /F %%D IN (%temp%\liste.tmp) DO (
SET Dossier=%%D
ren !Dossier!\*.psd montage.psd
IF EXIST %temp%\temp.tmp DEL %temp%\temp.tmp
IF EXIST %temp%\trie.tmp DEL %temp%\trie.tmp
DIR "%%D" /B | FIND "IMG">>%temp%\temp.tmp
@ECHO.
sort <%temp%\temp.tmp>> %temp%\trie.tmp
SET /A K=1
set progression=...
FOR /F "eol=. tokens=2 delims=_." %%R IN (%temp%\trie.tmp) do (
@ECHO.
IF !K! GTR 99 (
@ECHO.
@ECHO ---------------------------------------------------------------------------
@ECHO Les nombres ... trois chiffres ne peuvent pas ^tre trait's...
@ECHO ...en raison de d'passement du masque "photo_xx"
@ECHO Veuillez reprendre svp...
@ECHO ---------------------------------------------------------------------------
@ECHO.
) ELSE IF !K! GTR 9 (
SET PHOTO=photo_
) ELSE IF !K! LSS 10 (
SET PHOTO=photo_0
)
SET NomFichier=IMG_%%R.JPG
SET NouveauNom=!PHOTO!!K!.JPG
@ECHO.
SET chemin01=!Dossier!\!NomFichier!
@ECHO ---------------------------------------------------------------------------
cls
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO º º
@ECHO º Cellfride "Easy rename" pour Gizmil º
@ECHO º º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO.
@ECHO ************************** Traitement en cours ****************************
@ECHO.
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO ºL'emplacement actuel est º !Dossier! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºLe nom du fichier trait' est º !NomFichier! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºLe chemin du fichier !NomFichier! est º !chemin01! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºLe fichier sera renomm' º !NouveauNom! º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO.
RENAME !chemin01! !NouveauNom!
@ECHO.
@ECHO.
SET /A K=!K!+1
)
)
ENDLOCAL
IF EXIST %temp%\temp.tmp DEL %temp%\temp.tmp
IF EXIST %temp%\trie.tmp DEL %temp%\trie.tmp
IF EXIST %temp%\liste.tmp DEL %temp%\liste.tmp
cls
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO º º
@ECHO º Cellfride "Easy rename" pour Gizmil º
@ECHO º º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO.
@ECHO.
@ECHO *************************** Traitement termin' ****************************
@ECHO.
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO ºListage des dossiers º OK! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºTrie des fichiers º OK! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºCapture des chemins des fichiers º OK! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºModification des noms selon le masque: photo_xx º OK! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO º"montage_xxxxxxxxxxxxxxxxxxxxxxxxxx.jpg" non modifi' º OUI º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºFichier ".psd" renomm' en "montage.psd" º OK! º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO.
@ECHO.
@ECHO.
@ECHO.
@ECHO.
@ECHO.
@ECHO L'op'ration s'est d'roul'e avec succSs
set /p FIN= Appuyez sur Enter pour quitter
TITLE Cellfride "Easy rename" pour Gizmil
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO º º
@ECHO º Cellfride "Easy rename" pour Gizmil º
@ECHO º º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
SETLOCAL ENABLEDELAYEDEXPANSION
IF EXIST %temp%\liste.tmp DEL %temp%\liste.tmp
IF EXIST %temp%\temp.tmp DEL %temp%\temp.tmp
IF EXIST %temp%\trie.tmp DEL %temp%\trie.tmp
SET /A NumDossier=1
FOR /F %%X IN ('DIR /B /A:D ^| FIND /I "page_"') DO (
@ECHO %%X>>%temp%\liste.tmp
@ECHO.
SET /A NumDossier=!NumDossier!+1
)
FOR /F %%D IN (%temp%\liste.tmp) DO (
SET Dossier=%%D
ren !Dossier!\*.psd montage.psd
IF EXIST %temp%\temp.tmp DEL %temp%\temp.tmp
IF EXIST %temp%\trie.tmp DEL %temp%\trie.tmp
DIR "%%D" /B | FIND "IMG">>%temp%\temp.tmp
@ECHO.
sort <%temp%\temp.tmp>> %temp%\trie.tmp
SET /A K=1
set progression=...
FOR /F "eol=. tokens=2 delims=_." %%R IN (%temp%\trie.tmp) do (
@ECHO.
IF !K! GTR 99 (
@ECHO.
@ECHO ---------------------------------------------------------------------------
@ECHO Les nombres ... trois chiffres ne peuvent pas ^tre trait's...
@ECHO ...en raison de d'passement du masque "photo_xx"
@ECHO Veuillez reprendre svp...
@ECHO ---------------------------------------------------------------------------
@ECHO.
) ELSE IF !K! GTR 9 (
SET PHOTO=photo_
) ELSE IF !K! LSS 10 (
SET PHOTO=photo_0
)
SET NomFichier=IMG_%%R.JPG
SET NouveauNom=!PHOTO!!K!.JPG
@ECHO.
SET chemin01=!Dossier!\!NomFichier!
@ECHO ---------------------------------------------------------------------------
cls
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO º º
@ECHO º Cellfride "Easy rename" pour Gizmil º
@ECHO º º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO.
@ECHO ************************** Traitement en cours ****************************
@ECHO.
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO ºL'emplacement actuel est º !Dossier! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºLe nom du fichier trait' est º !NomFichier! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºLe chemin du fichier !NomFichier! est º !chemin01! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºLe fichier sera renomm' º !NouveauNom! º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO.
RENAME !chemin01! !NouveauNom!
@ECHO.
@ECHO.
SET /A K=!K!+1
)
)
ENDLOCAL
IF EXIST %temp%\temp.tmp DEL %temp%\temp.tmp
IF EXIST %temp%\trie.tmp DEL %temp%\trie.tmp
IF EXIST %temp%\liste.tmp DEL %temp%\liste.tmp
cls
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO º º
@ECHO º Cellfride "Easy rename" pour Gizmil º
@ECHO º º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO.
@ECHO.
@ECHO *************************** Traitement termin' ****************************
@ECHO.
@ECHO.
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
@ECHO ºListage des dossiers º OK! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºTrie des fichiers º OK! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºCapture des chemins des fichiers º OK! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºModification des noms selon le masque: photo_xx º OK! º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO º"montage_xxxxxxxxxxxxxxxxxxxxxxxxxx.jpg" non modifi' º OUI º
@ECHO ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO ºFichier ".psd" renomm' en "montage.psd" º OK! º
@ECHO ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
@ECHO.
@ECHO.
@ECHO.
@ECHO.
@ECHO.
@ECHO.
@ECHO L'op'ration s'est d'roul'e avec succSs
set /p FIN= Appuyez sur Enter pour quitter
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Cellfride, vraiment, merci ! ((-:
Le truc, c'est que je ne met jamais d'accent sur mes noms de fichier, je les fuis comme la peste ! lol Donc je ne sais pas si l' "OEM 863"était nécessaire mais merci à toi, ça va vraiment m'aider !
Je devrais pouvoir tester ça d'ici 2-3 jours, je reviendrais te dire si tout est ok !!
Encore un grand merci pour le temps que tu as pris à concocter ça, c'est super ! (-;
Le truc, c'est que je ne met jamais d'accent sur mes noms de fichier, je les fuis comme la peste ! lol Donc je ne sais pas si l' "OEM 863"était nécessaire mais merci à toi, ça va vraiment m'aider !
Je devrais pouvoir tester ça d'ici 2-3 jours, je reviendrais te dire si tout est ok !!
Encore un grand merci pour le temps que tu as pris à concocter ça, c'est super ! (-;
salut
de rien, ne t'inquiètes pas les nom de tes fichiers sont respectés à la lettre comme dans l'énoncé de ta question, et les accents dont j'ai parlé sans ceux des messages qui s'affichent pour communiquer avec l'utilisateur (toi dans ce cas) :)
sinon tout est impeccable, et testé dans des conditions réelles à savoir: Un dossier racine qui contient 120 dossier page_xxx (de page_001 à page_120) et le batch, dans chaque dossier enfant il y a des fichiers dont les noms sont sous la forme "IMG_xxxx.JPG", un fichier dont le nom est sous la forme "montage_suitedecaracteresvariables.jpg" et un autre fichier dont le nom est sous la forme "montage_suitedecaracteresvariables.psd".
les fichiers "IMG_xxxx.JPG" sont renommé en "photo_xx" (photo_01 à photo_99 comme tu la précisé dans ton énoncé) selon leurs ordre alphanumérique, le fichiers "montage_suitedecaracteresvariables.jpg" n'est jamais modifié, et le fichiers "montage_suitedecaracteresvariables.psd" est renommé en "montage.psd", tout cela en quelque secondes et c'est l'affichage en temps réel de ce qui se passe qui comporte des accents pour te dire où en est, t'affiche un message d'erreur si quelque chose cloche, par exemple dans le cas d'un sossier photo_050 par exemple qui comporte plus de 99 photo de type "IMG_xxxx.JPG" car dans ton énoncé tu a dis " j'aurais besoin que les fichiers "IMG_xxxx.JPG" renommés en "photo_xx.JPG" " alors avec photo_xx en ne peut pas dépasser photo_99 sachant qu'on commence de photo_01.
bonne chance
de rien, ne t'inquiètes pas les nom de tes fichiers sont respectés à la lettre comme dans l'énoncé de ta question, et les accents dont j'ai parlé sans ceux des messages qui s'affichent pour communiquer avec l'utilisateur (toi dans ce cas) :)
sinon tout est impeccable, et testé dans des conditions réelles à savoir: Un dossier racine qui contient 120 dossier page_xxx (de page_001 à page_120) et le batch, dans chaque dossier enfant il y a des fichiers dont les noms sont sous la forme "IMG_xxxx.JPG", un fichier dont le nom est sous la forme "montage_suitedecaracteresvariables.jpg" et un autre fichier dont le nom est sous la forme "montage_suitedecaracteresvariables.psd".
les fichiers "IMG_xxxx.JPG" sont renommé en "photo_xx" (photo_01 à photo_99 comme tu la précisé dans ton énoncé) selon leurs ordre alphanumérique, le fichiers "montage_suitedecaracteresvariables.jpg" n'est jamais modifié, et le fichiers "montage_suitedecaracteresvariables.psd" est renommé en "montage.psd", tout cela en quelque secondes et c'est l'affichage en temps réel de ce qui se passe qui comporte des accents pour te dire où en est, t'affiche un message d'erreur si quelque chose cloche, par exemple dans le cas d'un sossier photo_050 par exemple qui comporte plus de 99 photo de type "IMG_xxxx.JPG" car dans ton énoncé tu a dis " j'aurais besoin que les fichiers "IMG_xxxx.JPG" renommés en "photo_xx.JPG" " alors avec photo_xx en ne peut pas dépasser photo_99 sachant qu'on commence de photo_01.
bonne chance
Ok, merci ! Non, je ne dépasserais jamais la vingtaine de fichiers jpg dans un dossier donc c'est ok pour l'énumération avec un seul zéro ! (-;
Encore une petite question, néanmoins : le script utilise le chemin relatif du dossier dans lequel je le place ? Je ne dois spécifier le chemin de mon dossier nulle part, apparemment ?
Encore une petite question, néanmoins : le script utilise le chemin relatif du dossier dans lequel je le place ? Je ne dois spécifier le chemin de mon dossier nulle part, apparemment ?
salut cellfride,
Gizmil est à remercier pour son travail
Cependant je trouve que le programme auquel ça aboutit est un peu effrayant.
Manifestement, le batch n'est pas adapté à ce genre de travail.
Est-ce que tu tiens à utiliser un programme batch pour ton besoin ?
En Python, le même programme serait plus facile à écrire, plus lisible, plus comprégensible, plus maintenable.
Python s'installe en moins de 10 minutes.
Si tu es OK, je peux t'écrire ce programme en Python, a priori je pense qu'il prendrait 30 lignes, et encore je prends large.....
Gizmil est à remercier pour son travail
Cependant je trouve que le programme auquel ça aboutit est un peu effrayant.
Manifestement, le batch n'est pas adapté à ce genre de travail.
Est-ce que tu tiens à utiliser un programme batch pour ton besoin ?
En Python, le même programme serait plus facile à écrire, plus lisible, plus comprégensible, plus maintenable.
Python s'installe en moins de 10 minutes.
Si tu es OK, je peux t'écrire ce programme en Python, a priori je pense qu'il prendrait 30 lignes, et encore je prends large.....
Salut
1- le topic demandait un batch alors que je pouvait très bien faire ça avec beaucoup moins de lignes en vbs, js, vb.net, c# ou autre sachant qu'ils sont plus adaptés pour ça
2- le batch est moins effrayant sous win XP que sur win 7 (question de vitesse pas plus) car sous mon poste l'affichage et stable alors que les fichiers changent, ce qui n'est pas le cas sous win7, où l'affichage scintille et à tendance même à allez vers le haut.
3- gizmil avait besoin d'aide, et personne d'autre que moi ne s'est intéressé à l'aider alors qu'il y a un question de posée chaque second, ce qui voudrait dire que tout le monde est ici pour prendre et non pas pour donner, ce qui est un fâcheuse tendance chez la plupart des internautes, sachant que si Gizmil avait besoin d'un script pour faire ce taf, c'est que c'est un affaire de temps aussi, (désolé pour le retard mais c'est à cause de mon taf à moi qui ne risque pas de me lâcher)
4- Je pouvais très bien faire un batch qui n'affiche rien de rien ou juste un barre de progression
5- Merci d'aider Gizmil si tu peut faire un script vite fait, et un peu plus de respect la prochaine fois serai la bienvenue :)
Cordialement
1- le topic demandait un batch alors que je pouvait très bien faire ça avec beaucoup moins de lignes en vbs, js, vb.net, c# ou autre sachant qu'ils sont plus adaptés pour ça
2- le batch est moins effrayant sous win XP que sur win 7 (question de vitesse pas plus) car sous mon poste l'affichage et stable alors que les fichiers changent, ce qui n'est pas le cas sous win7, où l'affichage scintille et à tendance même à allez vers le haut.
3- gizmil avait besoin d'aide, et personne d'autre que moi ne s'est intéressé à l'aider alors qu'il y a un question de posée chaque second, ce qui voudrait dire que tout le monde est ici pour prendre et non pas pour donner, ce qui est un fâcheuse tendance chez la plupart des internautes, sachant que si Gizmil avait besoin d'un script pour faire ce taf, c'est que c'est un affaire de temps aussi, (désolé pour le retard mais c'est à cause de mon taf à moi qui ne risque pas de me lâcher)
4- Je pouvais très bien faire un batch qui n'affiche rien de rien ou juste un barre de progression
5- Merci d'aider Gizmil si tu peut faire un script vite fait, et un peu plus de respect la prochaine fois serai la bienvenue :)
Cordialement
Heyquem, toute solution est la bienvenue et je ne suis pas forcément axé sur du batch, non ! J'ai adopté cette solution car j'ai appris qu'il était possible de créer des programmes de gestion de fichiers Windows par l'entremise du batch.
Cependant, je ne veux pas manquer de respect envers Cellfride ! Si son travail fonctionne, c'est tout ce qui m'importe !
Je ne connais pas le principe de Python ! Peux-tu créer un exécutable ? Vu l'intitulé du sujet, je te propose d'éventuellement en discuter en MP ?
PS : je suis Gizmil, le créateur du topic et Cellfride est le concepteur du script en batch et non l'inverse ! (-;
Cependant, je ne veux pas manquer de respect envers Cellfride ! Si son travail fonctionne, c'est tout ce qui m'importe !
Je ne connais pas le principe de Python ! Peux-tu créer un exécutable ? Vu l'intitulé du sujet, je te propose d'éventuellement en discuter en MP ?
PS : je suis Gizmil, le créateur du topic et Cellfride est le concepteur du script en batch et non l'inverse ! (-;
Ah ! si je ne suis pas capable de distinguer le questionneur du répondeur, ça présage mal pour un algorithme ! :))
Salut donc Gizmil.
Je ne crois pas que le fait qu'un programme fonctionne suffise à s'en satisfaire. Des critères tels que la rapidité de son écriture, sa maintenabilité, sa lisibilité, etc, sont à prendre en compte.
Si plus tard, tu souhaites faire quelques chose de légèrement différent ou adapter le code à un autre objectif un peu plus corsé, et que le batch ne pourra pas le faire sans rajouter 60 lignes, ce sera pénible.
Je pense sincérement qu'un programme en langage Python serait beaucoup plus facile à faire, comprendre, maintenir, adapter, etc etc
J'ai une grosse lacune en Python: je ne sais pas encore créer un exécutable qui soit ...exécutable sans avoir installé Python sur l'ordi.
Mais l'installation de Python est tellement simple, du moins sur Windows, que je ne crois pas que ce soit un problème.
Il m'arrive souvent de désinstaller mon Python 2.7 et d'installer Python 3 de façon à temporairement tester des codes en Python 3, et ça ne me prend pas très longtemps à passer de l'un à l'autre.
Pour MP, c'est eyguem@gmail.com
AVEC un G et non un q dans le pseudo (eyquem@gmail.com était dèjà pris)
Mais de toutes façons, ici ce n'est pas mal non plus, a priori avec Python, il ne devrait pas y avoir à échanger pendant 3 jours. Il faudrait juste que je trouve le temps de faire le code. Si tu n'es pas pressé, je pourrai faire ça ce soir.
Salut donc Gizmil.
Je ne crois pas que le fait qu'un programme fonctionne suffise à s'en satisfaire. Des critères tels que la rapidité de son écriture, sa maintenabilité, sa lisibilité, etc, sont à prendre en compte.
Si plus tard, tu souhaites faire quelques chose de légèrement différent ou adapter le code à un autre objectif un peu plus corsé, et que le batch ne pourra pas le faire sans rajouter 60 lignes, ce sera pénible.
Je pense sincérement qu'un programme en langage Python serait beaucoup plus facile à faire, comprendre, maintenir, adapter, etc etc
J'ai une grosse lacune en Python: je ne sais pas encore créer un exécutable qui soit ...exécutable sans avoir installé Python sur l'ordi.
Mais l'installation de Python est tellement simple, du moins sur Windows, que je ne crois pas que ce soit un problème.
Il m'arrive souvent de désinstaller mon Python 2.7 et d'installer Python 3 de façon à temporairement tester des codes en Python 3, et ça ne me prend pas très longtemps à passer de l'un à l'autre.
Pour MP, c'est eyguem@gmail.com
AVEC un G et non un q dans le pseudo (eyquem@gmail.com était dèjà pris)
Mais de toutes façons, ici ce n'est pas mal non plus, a priori avec Python, il ne devrait pas y avoir à échanger pendant 3 jours. Il faudrait juste que je trouve le temps de faire le code. Si tu n'es pas pressé, je pourrai faire ça ce soir.