J'ai un dossier (appelons-le A) avec beaucoup de sous-dossiers B, C, D, E, qui ont à nouveau des sous-dossiers B1, B2, B3, ... C1, C2, C3 ...
Comment utiliser cmd pour déplacer tous les fichiers de tous les sous-dossiers vers le dossier "racine" A?
J'ai un dossier (appelons-le A) avec beaucoup de sous-dossiers B, C, D, E, qui ont à nouveau des sous-dossiers B1, B2, B3, ... C1, C2, C3 ...
Comment utiliser cmd pour déplacer tous les fichiers de tous les sous-dossiers vers le dossier "racine" A?
Réponses:
À partir d'une invite de commande:
Si vous devez ensuite nettoyer les dossiers vides:
Maintenant, si vous avez des conflits de noms de fichiers, vous êtes seul. Vous pouvez ajouter le
/y
paramètre à lamove
commande (avant le"%i"
) pour forcer les remplacements. Si vous voulez quelque chose de différent, vous aurez besoin d'un autre programme qui peut tout renommer automatiquement pour vous.De plus, si vous souhaitez l'utiliser dans un fichier de commandes, changez tout
%
en%%
.la source
FOR /r
- bien!Créez un dossier et copiez-y tous les autres dossiers, puis cliquez avec le bouton droit sur ce dossier et sélectionnez Rechercher . Dans la zone de recherche, entrez
*.*
.Cela répertoriera tous les fichiers et dossiers. Sélectionnez tous les fichiers souhaités dans votre répertoire racine et coupez-les. Accédez à votre répertoire racine et collez-y tous les fichiers.
la source
Installez Cygwin (ou un autre environnement Unix pour Windows) et exécutez ce qui suit:
la source
mv
et desfind
variantes, vous devrez peut-être utiliser à lafind . -type f -exec mv -t . {} \;
place.mkdir -p a/a1 a/a2 a/a3 b/b1 b/b2 b/b3 c
ettouch a/a1/foo a/a1/bar a/a2/baz a/a3/qux b/b1/quux b/b2/quuux b/b3/quuuux c/ccc
pour la préparation.find . -type f -exec mv {} . ;
Et ça a semblé fonctionner correctement.