Renommer plusieurs fichiers en une fois
matt240490
-
matt240490 -
matt240490 -
Bonjour,
dans un répertoire, j'ai plusieurs fichiers.
Exemple :
Ventes01012012.txt
Ventes02012012.txt
...
Je veux pouvoir les renommer tous en une fois :
Ventes1.txt
Ventes2.txt
...
J'ai pensé à rename *.* Ventes.txt, pensant que le second allait être en Ventes - Copie.txt
Mais non, seul le premier est renommé.
Comment faire pour que tous les fichiers soient renommés et obtenir ce que je veux ?
Merci beaucoup de votre aide.
dans un répertoire, j'ai plusieurs fichiers.
Exemple :
Ventes01012012.txt
Ventes02012012.txt
...
Je veux pouvoir les renommer tous en une fois :
Ventes1.txt
Ventes2.txt
...
J'ai pensé à rename *.* Ventes.txt, pensant que le second allait être en Ventes - Copie.txt
Mais non, seul le premier est renommé.
Comment faire pour que tous les fichiers soient renommés et obtenir ce que je veux ?
Merci beaucoup de votre aide.
11 réponses
-
Bonjour,
Je n'aime pas batch donc je ne ne testerai pas le code que je vais écrire !
Je me rappelle avoir déjà codé exactement ce que tu demande.
C'était dans ce style :set /A i=0 for %%f in (*) do ( set /A i+=1 rename %%f Ventes%%i.txt ) pause
Fais une copie de ton dossier avant pour être sûr, et désolé s'il y a des fautes de syntaxe !
Cdlt,
-
-
Qu'est ce qui ne fonctionne pas ? Comment ça réagit ? Tu peut donner la sortie s'il te plait ?
-
Bon j'ai fait un petit effort. Voici pour toi, chez moi ça marche :
@echo off set /a ii=0 setlocal ENABLEDELAYEDEXPANSION for %%f in (*) do ( set /A ii+=1 rename %%f Ventes!ii!.txt ) pause
J'avais oublié qu'il fallait prendre en compte l'expansion retardée, désolé.
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
hello
je modifierais le code de juliencolin54 comme ça:setlocal enableDelayedExpansion set /A i=0 for %%f in (*) do ( set /A i+=1 rename %%f Ventes!i!.txt ) pause
-
-
-
De rien,
at your service !
Penses à mettre "Résolu"
Software is like sex, it's better when it's free - Linus Torvald -
Par contre, il faudrait juste une petite correction, qu'à chaque fois que je relance le .bat, il reparte de 1...
Sinon, il continue d'incrémenter -
-
Si je le fais 1x, il s'appellera bien Ventes1.
Si je relance la procédure, il devient Ventes2.
Il faudrait qu'il le remplace et l'écrase.