web-dev-qa-db-fra.com

Utiliser xcopy pour copier des fichiers de plusieurs répertoires dans un répertoire

Est-il possible d'utiliser xcopy pour copier des fichiers de plusieurs répertoires dans un répertoire à l'aide d'une seule commande xcopy?

En supposant que j'ai l'arborescence

racine\Source\Sub1\Sub2

Je souhaite copier tous les fichiers .xml du répertoire racine\Source, y compris le sous-dossier, vers la racine\Destination. Je ne veux pas copier la structure des dossiers, mais uniquement les fichiers.

16
Oddleif

Comme DandDI l'a dit, vous n'avez pas besoin de xcopy. pour la déclaration aide beaucoup. Cependant, vous n'avez pas besoin d'indiquer le résultat du processus de la commande dir, cette commande aide mieux

for /R c:\source %f in (*.xml) do copy "%f" x:\destination\

En passant, lorsque vous l'utilisez à partir d'un fichier de commandes, vous devez ajouter% de rechange devant la variable% f, votre ligne de commande doit donc être: 

for /R c:\source %%f in (*.xml) do copy %%f x:\destination\

quand vous l'utilisez dans un lot

  • Faut-il entourer% f de guillemets doubles sinon la copie des noms de fichiers avec des espaces échouera
33
kokeksibir

Vous n'avez pas besoin de xcopy pour cela. Vous pouvez obtenir une liste de tous les fichiers souhaités et effectuer la copie de cette façon.

Par exemple, dans la commande windows xp, appuyez sur:

 for/f "delims =="% k in ('dir c:\source\*. xml/s/b') copie "% k" x:\destination\

Le/s va dans tous les sous-répertoires et le/b ne répertorie que le nom et le chemin des fichiers. Chaque fichier est assigné à la variable% k, puis la commande copy le copie dans la destination. La seule astuce consiste à s'assurer que la destination ne fait pas partie de la source.

4
DandDI

La réponse à ce problème qui, à mon avis, est "Comment rassembler tous vos fichiers dans tous les petits sous-répertoires dans un seul répertoire" consiste à télécharger un logiciel appelé XXCOPY. Ceci est disponible gratuitement sur XXCOPY.COM et il existe heureusement une version non commerciale gratuite. L’une des questions les plus fréquemment posées sur la fonction d’aide de XXCOPY.COM est "Comment puis-je regrouper tous mes fichiers dans un seul répertoire" et indique le commutateur à utiliser? XXCOPY est un moyen sûr de le faire et il est contenu dans une archive .Zip afin de pouvoir le décompresser peut ne pas être aussi simple mais ce n’est pas particulièrement difficile non plus. Il existe un programme de décompression appelé ZipGenius disponible sur le site Web ZipGenius.it, donc peut-être qu'avant de télécharger XXCOPY, puis de télécharger ZipGenius, il s'agit d'un petit wammy (!)

0
Victor Evans