[batch] Reformater nom liste de fichiers
Résolu
danieliiitooo
Messages postés
20
Date d'inscription
Statut
Membre
Dernière intervention
-
cs-bilou Messages postés 769 Date d'inscription Statut Membre Dernière intervention -
cs-bilou Messages postés 769 Date d'inscription Statut Membre Dernière intervention -
Bonjour à toutes et à tous,
Pouvez-vous me faire part de vos lumières afin de résoudre la problématique suivante ?
Dans le répertoire c:\folder1 se trouve une liste de fichiers de la forme:
azerty gfgddgfdg - fgdfgdgfdg.pdf
uiopqs fsdfsdfsf - sfdsfsdfsd.pdf
dfghjk gfdgfdgdf - gfdgfdgfdg.pdf
lmwxcv gfgdfgdfg - gfgfdgfggf.pdf
Je souhaiterai les renommer sous la forme: (En fait, ne conserver que les 5 premiers caractères)
azerty.pdf
uiopqs.pdf
dfghjk.pdf
lmwxcv.pdf
Comment puis-je via la commande for "nettoyer" ces fichiers ?
(Ils peuvent rester dans le même répertoire ou être transférés dans un autre répertoire)
J'ai tenté deux trois bricoles sans succès.
Exemple: Faire un dir /-D du contenu du répertoire et extraire le contenu dans un log
Se servir de ce log pour renommer les fichiers (Avec un For...tokens... %%a %%bb in....
Mais il y a forcément une solution plus simple. (une commande magique, alliage d'un for et d'une ~1,5 ...)
Merci d'avance pour votre aide
Daniel
Pouvez-vous me faire part de vos lumières afin de résoudre la problématique suivante ?
Dans le répertoire c:\folder1 se trouve une liste de fichiers de la forme:
azerty gfgddgfdg - fgdfgdgfdg.pdf
uiopqs fsdfsdfsf - sfdsfsdfsd.pdf
dfghjk gfdgfdgdf - gfdgfdgfdg.pdf
lmwxcv gfgdfgdfg - gfgfdgfggf.pdf
Je souhaiterai les renommer sous la forme: (En fait, ne conserver que les 5 premiers caractères)
azerty.pdf
uiopqs.pdf
dfghjk.pdf
lmwxcv.pdf
Comment puis-je via la commande for "nettoyer" ces fichiers ?
(Ils peuvent rester dans le même répertoire ou être transférés dans un autre répertoire)
J'ai tenté deux trois bricoles sans succès.
Exemple: Faire un dir /-D du contenu du répertoire et extraire le contenu dans un log
Se servir de ce log pour renommer les fichiers (Avec un For...tokens... %%a %%bb in....
Mais il y a forcément une solution plus simple. (une commande magique, alliage d'un for et d'une ~1,5 ...)
Merci d'avance pour votre aide
Daniel
A voir également:
- [batch] Reformater nom liste de fichiers
- Liste déroulante excel - Guide
- Fichier batch - Guide
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
- Explorateur de fichiers - Guide
5 réponses
Tien voila sa devrait marcher:
J'espère que j'ai pue t'aider.
Bilou.
@echo off setlocal enableDelayedExpansion for %%i in (*.pdf) do ( set fichier=%%i ren "%%i" !fichier:~0,6!%%~xi ) setlocal disableDelayedExpansion pause
J'espère que j'ai pue t'aider.
Bilou.
Merci Bilou.
Cela fonctionne parfaitement lorsque le batch se trouve dans le même répertoire ou se trouvent les fichiers.
Il ne fonctionne néanmoins pas lorsque le batch n'est pas dans le même répertoire.
Exemple: Pour des fichiers contenus dans le répertoire "test"
@echo off
setlocal enableDelayedExpansion
for %%i in (test\*.pdf) do (
set fichier=%%i
ren "%%i" !fichier:~0,10!%%~xi
)
setlocal disableDelayedExpansion
pause
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
Press any key to continue . . .
Cela fonctionne parfaitement lorsque le batch se trouve dans le même répertoire ou se trouvent les fichiers.
Il ne fonctionne néanmoins pas lorsque le batch n'est pas dans le même répertoire.
Exemple: Pour des fichiers contenus dans le répertoire "test"
@echo off
setlocal enableDelayedExpansion
for %%i in (test\*.pdf) do (
set fichier=%%i
ren "%%i" !fichier:~0,10!%%~xi
)
setlocal disableDelayedExpansion
pause
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
The syntax of the command is incorrect.
Press any key to continue . . .
Opp et voila forum résolue ^^:
Avec ce script tu devrait avoir aucun problème.
Bilou.
@echo off setlocal enableDelayedExpansion for /r "test\" %%i in (*.pdf) do ( set fichier=%%~ni ren "%%i" !fichier:~0,6!%%~xi ) setlocal disableDelayedExpansion pause
Avec ce script tu devrait avoir aucun problème.
Bilou.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question