Posez votre question Signaler

[BATCH] rename : préfixe [Résolu]

blackaagony 23Messages postés 19 novembre 2006Date d'inscription - Dernière réponse le 21 juil. 2007 à 14:59
Bonjour,
La commande DOS FOR est compliquée à mon goût. Ca fait plusieurs fois que je me penche dessus et je ne parvient pas à faire ce que je veux.
Mon problème actuellement est que je veux faire un batch ajoutant un préfixe du type "abc - " à chaque dossiers du répertoire courant.
Voila ou j'en suis :
@echo off
echo Renommage

set %PREFIX="abc - "
echo Le prefixe est %PREFIX%

FOR /D %%i IN (*) DO rename * %PREFIX%*

pause

Voila, un coup de main serait le bienvenu!
Lire la suite 

[BATCH] rename : préfixe »

10 réponses
Réponse
+0
moins plus
Salut,

Cette commande ne renomme pas les dossiers.
Ajouter un commentaire
Réponse
+0
moins plus
Je dirais:
set %PREFIX="abc -"
FOR /D %%i IN (*) DO rename %%i "%PREFIX% %%i"
Ajouter un commentaire
Réponse
+0
moins plus
nikel merci dubcek, ca marche très bien. Ca puvait pas marcher avec '*'.

s.spark, j'ai pas compris ce que tu voulais dire, mais tu te trompes surement... puisque ça marche.

Voici donc le batch final :

@echo off
echo Renommage

set %PREFIX="abc - "
echo Le prefixe est %PREFIX%

FOR /D %%i IN (*) DO rename %%i %PREFIX%%%i

pause
Ajouter un commentaire
Réponse
+0
moins plus
J'ai regardé la docu de cette commande et ça ne fait pas mansion des dossiers :/
dubcek- 20 juil. 2007 à 16:07
et pourtant

Répertoires seulement
Si le jeu contient des caractères génériques (* et ?), la commande spécifiée s'exécute pour chaque répertoire (au lieu d'un jeu de fichiers dans un répertoire spécifié) qui correspond au jeu. La syntaxe de cette commande est la suivante :

for /D [%% | %]variable in (jeu) do commande [OptionsLigneCommande]
Ajouter un commentaire
Réponse
+0
moins plus
t'as pas du voir ça :

FOR /D %variable IN (ensemble) DO commande [paramètres]

Si ensemble contient des caractères génériques, alors la correspondance se
fait sur les noms de répertoires au lieu des noms de fichiers.

par contre, les espaces dans les noms de fichiers d'origine ne sont pas gérés... j'ai essayé quelques combinaisons avec les double quotes, ça n'a rien donné...
Ajouter un commentaire
Réponse
+0
moins plus
Je parlais de rename ^^ Mais bon maintenant je le saurais :D
Ajouter un commentaire
Réponse
+0
moins plus
rien à faire, je n'arrive pas à gérer les espaces dans les noms de fichier...

@echo off
echo Renommage

set %PREFIX="abc - "
echo Le prefixe est %PREFIX%

FOR /D %%i IN (*) DO rename "%%i" %PREFIX%%%i

pause


Quelqu'un a une idée?
Ajouter un commentaire
Réponse
+0
moins plus
Voici surement le dernier message pour ce topic. J'ai enfin un script qui gère les espaces dans les noms de fichier :

set PREFIX=abc - 
echo Le prefixe est %PREFIX%

FOR /D %%i IN (*) DO rename "%%i" "%PREFIX%%%~nxi"

pause
pause>nul


On m'a donné l'astuce sur http://www.developpez.net/forums/showthread.php?p=2323695#post2323695

ciao
Ajouter un commentaire
Réponse
+0
moins plus
Dans mon message du vendredi 20 juillet 2007 à 15h39:11 PREFIX est entre guillemets
:-)
Ajouter un commentaire
Ce document intitulé « [BATCH] rename : préfixe » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?