J'ai la structure de dossier suivante:
DossierA
-- Dossier1
-- Dossier2
-- Dossier3
...
-- Dossier99
Les dossiers 1 à 99 contiennent des fichiers.
Tout ce que je veux faire est de copier TOUS LES FICHIERS dans UN SEUL DOSSIER, de faire une copie de FolderA et d'effacer les dossiers 1-99 en conservant tous les fichiers.
J'aimerais le faire avec Robocopy de cmd.exe si possible (Windows Server 2008)
Pourquoi utiliser robocopy
? C'est un bon outil pour une tâche spécifique mais ce n'est pas celui-là.
Vous pouvez simplement utiliser ce que cmd
vous donne déjà:
for /r %f in (*) do @copy "%f" target
Cela va essentiellement "aplatir" votre hiérarchie de répertoires. for /r
va parcourir une arborescence de répertoires de manière récursive, à la recherche de noms de fichiers correspondant au modèle donné. Vous pouvez également spécifier le répertoire dans lequel démarrer:
for /r FolderA %f in (*) do @copy "%f" target
Dans la boucle, il ne s'agit que d'une simple copie du fichier dans un dossier spécifié.
Robocopy est un excellent outil ... quand vous avez un travail, il peut gérer. Pourquoi ne pas utiliser xcopy?
Si vous avez deux lecteurs, vous pouvez simplement utiliser xcopy:
XCOPY C:\*.* D:\NewFolder\ /S
Ou utilisez XXCOPY pour un lecteur:
XXCOPY C:\*.* C:\NewFolder\ /S /CCY
Get-ChildItem -Path source -Recurse -File | Move-Item -Destination dest