Batch pour déplacer des fichiers avec un espace

Résolu
meepmeep Messages postés 26 Statut Membre -  
meepmeep Messages postés 26 Statut Membre -
Bonjour,
Après avoir un peu cherché sur le net, j'ai fait un batch qui sert déplacer vers le dossier parent courant, tous les fichiers contenus dans les sous-répertoires.
Ca marche très bien sauf quand les noms de fichier contiennent un espace.
J'ai lu qu'il fallait mettre des guillemets, oui mais dans mon cas, où les mettre ? J'ai essayé partout, ça ne donne rien

set currentpath=%~dp0
for /r %%i in ("*.*") do MOVE %%i %currentpath%


/r permet d'explorer tous les dossiers et sous dossiers
%~dp0 renvoi le dossier courant où est contenu le batch
for %%i permet de faire une boucle itérative

Merci d'avance si vous avez la solution

meepmeep...

2 réponses

  1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    Bonjour,

    Voilà ce que je ferais :
    for /r %%i in ("*.*") do MOVE "%%~i" "%~dp0"


    0
  2. meepmeep Messages postés 26 Statut Membre 2
     
    Yes, magnifique !
    Je n'avais pas essayé avec les guillemets autours du %%~i ...
    Et c'est vrai que de mettre directement %~dp0 à la fin plutôt que de passer par une variable est quand même plus léger...
    Merci infiniment !
    0