Menu

Robocopy / copier fichiers sans les dossiers [Résolu/Fermé]

Messages postés
37
Date d'inscription
samedi 12 juillet 2014
Statut
Membre
Dernière intervention
12 juillet 2017
- - Dernière réponse : barnabe0057
Messages postés
12248
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
16 juin 2019
- 12 juil. 2017 à 12:21
Bonjour,

Je voudrais faire une copie de tous les .xls contenus dans une arborescence de dossiers, le hic c'est que je ne veux pas conserver cette arborescence.
Je souhaite retrouver tous les .xls copiés a la racine du fichier de destination.

Pour l'instant, mon robocopy ressemble à ça:

Robocopy "E:\DossierSource" "E:\Destination" *.xls /E /R:1 /W:1 /TEE /LOG:C:\log%STAMP%.log /DCOPY:T

Merci de votre aide.

Cdt

PS:
variable STAMP pour la date set "STAMP=%YYYY%-%MM%-%DD%"
Afficher la suite 

3 réponses

Messages postés
12248
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
16 juin 2019
1969
0
Merci
Bonjour,

J'ai pas testé mais ça devrait le faire comme ça :

cd /d "E:\DossierSource"

for /f "tokens=*" %%A in ('dir /b /s /a-d "*.xls"') do (

Robocopy "%%~A" "E:\Destination" /E /R:1 /W:1 /TEE /LOG:C:\log%STAMP%.log /DCOPY:T

)



“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
Messages postés
37
Date d'inscription
samedi 12 juillet 2014
Statut
Membre
Dernière intervention
12 juillet 2017
0
Merci
Bonjour barnabe0057 et merci pour ta réponse rapide.

C'est un bon début =) mais il y a quand même une erreur:

"
ERREUR 123 accès au répertoire sour E:/../machin Truc.xls
La syntaxe du nom de fichier, de répertoire ou du volume est incorrecte.
"

Peut-être dû au fait qu'il y ait des espaces dans le nom de fichier.

J'ai aussi du supprimer l'argument /LOG.

merci de ton aide.
barnabe0057
Messages postés
12248
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
16 juin 2019
1969 -
Je vais tester ça de suite.
barnabe0057
Messages postés
12248
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
16 juin 2019
1969 > barnabe0057
Messages postés
12248
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
16 juin 2019
-
Effectivement RoboCopy n'est pas adapté à la copie de fichiers, il copie des répertoires.

Il suffit d'utiliser la commande COPY ou bien XCOPY :

cd /d "E:\DossierSource"

for /f "tokens=*" %%A in ('dir /b /s /a-d "*.xls"') do (

copy "%%~A" "E:\Destination"

)
Messages postés
37
Date d'inscription
samedi 12 juillet 2014
Statut
Membre
Dernière intervention
12 juillet 2017
0
Merci
Super, ça fonctionne.
Merci de ton aide.

Et en passant, je note que robocopy n'est pas adapté aux fichiers.

Juste une dernière chose, ce bat va être lancé tous les jours. Si le fichier déjà, il l'écrase? (c'est dû mons ce que je crois constater.)
barnabe0057
Messages postés
12248
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
16 juin 2019
1969 -
Oui il écrase, tu peux rajouter une condition IF NOT EXIST si tu ne veux pas que ça soit écrasé.
BaZHik
Messages postés
37
Date d'inscription
samedi 12 juillet 2014
Statut
Membre
Dernière intervention
12 juillet 2017
-
Non, c'est bon comme ça.

Merci de ton aide.
barnabe0057
Messages postés
12248
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
16 juin 2019
1969 > BaZHik
Messages postés
37
Date d'inscription
samedi 12 juillet 2014
Statut
Membre
Dernière intervention
12 juillet 2017
-
De rien, bonne journée à bientôt peut-être.