Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1392 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Copie de fichier dans des sous répertoires aléatoires multiples

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Copie de fichier dans des sous répertoires aléatoires multiples

n°2285174
lilp1
Posté le 15-07-2016 à 14:21:02  profilanswer
 

Bonjour,
J'ai besoin de réaliser la copie de fichiers dans une arborescence de type :
srvvdl1\Esp_transvers\Espace_associations\zOPAL2\*\En_cours\*\
 
Avec un répertoire racine, qui contiens plusieurs sous répertoires et dans lequel je ne doit prendre que le contenue des répertoires "En_cours" avec eux mêmes différents sous répertoires.
 
Je pensais qu'avec une commande de type :
Set Bodi_RepIN=\\srvvdl1\Esp_transvers\Espace_associations\zOPAL2\*\En_cours\*\
Puis :
Set Bodi_Fic=opal_*_*_*.xls
Set Bodi_Stage_Input=\stage\input
 
for /d %%X in (%Bodi_RepIN%) do for /d %%Y in (%%X\en_cours\*) do (
Pushd %%Y  
for /r %%F in (%Bodi_Fic%) do (
 copy /Y %%F %Bodi_Stage_input%
 set /A RC+=%ERRORLEVEL%
 )
popd
)
 
Cela passerait, mais je n'ai aucun fichier qui se copie.
 
 
Quelqu'un aurait une idée?
 
D'avance merci.

mood
Publicité
Posté le 15-07-2016 à 14:21:02  profilanswer
 

n°2285212
rat de com​bat
attention rongeur méchant!
Posté le 16-07-2016 à 02:35:40  profilanswer
 

Je ne connais pas pushd/popd et je pense qu'il n'y en a pas besoin. Aussi il semble qu'une seule étoile soit autorisée dans le for. (???)

 

Voici un code test qui semble fonctionner:

Code :
  1. cls
  2. echo on
  3. set Bodi_RepIN=zOPAL2\*
  4. Set Bodi_Fic=opal_*_*_*.xls
  5. Set Bodi_Stage_Input=stage\input
  6. for /d %%X in (%Bodi_RepIN%) do (
  7.     for /d %%Y in (%%X\en_cours\*) do (
  8.         echo in %%Y
  9.         copy %%Y\%Bodi_Fic% %Bodi_Stage_Input%
  10.     )
  11. )
 

avec l'arborescence

Code :
  1. dossier_test\stage
  2. dossier_test\test.bat
  3. dossier_test\zOPAL2
  4. dossier_test\stage\input
  5. dossier_test\zOPAL2\dossier1
  6. dossier_test\zOPAL2\dossier2
  7. dossier_test\zOPAL2\dossier1\en_cours
  8. dossier_test\zOPAL2\dossier1\opal_9_9_91.xls
  9. dossier_test\zOPAL2\dossier1\en_cours\doss1
  10. dossier_test\zOPAL2\dossier1\en_cours\doss2
  11. dossier_test\zOPAL2\dossier1\en_cours\doss3
  12. dossier_test\zOPAL2\dossier1\en_cours\doss1\opal_1_1_1.xls
  13. dossier_test\zOPAL2\dossier1\en_cours\doss1\opal_1_1_2.xls
  14. dossier_test\zOPAL2\dossier1\en_cours\doss2\opal_1_2_1.xls
  15. dossier_test\zOPAL2\dossier1\en_cours\doss2\opal_1_2_2.xls
  16. dossier_test\zOPAL2\dossier1\en_cours\doss3\opal_1_3_1.xls
  17. dossier_test\zOPAL2\dossier1\en_cours\doss3\opal_1_3_2.xls
  18. dossier_test\zOPAL2\dossier2\en_cours
  19. dossier_test\zOPAL2\dossier2\opal_9_9_92.xls
  20. dossier_test\zOPAL2\dossier2\en_cours\doss1
  21. dossier_test\zOPAL2\dossier2\en_cours\doss2
  22. dossier_test\zOPAL2\dossier2\en_cours\doss1\opal_2_1_1.xls
  23. dossier_test\zOPAL2\dossier2\en_cours\doss1\opal_2_1_2.xls
  24. dossier_test\zOPAL2\dossier2\en_cours\doss2\opal_2_2_1.xls
  25. dossier_test\zOPAL2\dossier2\en_cours\doss2\opal_2_2_2.xls
 

Le code se trouve dans test.bat. Les fichiers opal avec des 9 ne sont PAS copiés, c'est justement pour tester.

 

À adapter à tes besoins.


Message édité par rat de combat le 16-07-2016 à 02:37:09
n°2285287
lilp1
Posté le 18-07-2016 à 10:24:42  profilanswer
 

Le script test.bat se trouve sur \\srvetl1\D$\VDL\Scripts.
 
Du coup, il ne va pas chercher au bon endroit.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Copie de fichier dans des sous répertoires aléatoires multiples

 

Sujets relatifs
[récupération de fichier]Comment exporter une feuille dans un nouveau fichier
Existence de répertoires d'après une liste[VBA] Travail sur fichier excel en arrière plan
Lire un fichier data [resolu, merci]Fermer et Ouvrir le Même fichier sans Souris
lecture de fichier pour comparaison de contenuConvertir fichier PDF en txt à partir d'un fichier d'initialisation
Récupérer une partie du nom de fichier en variable ?Macro générer fichier excel avec info dans l'ordre
Plus de sujets relatifs à : Copie de fichier dans des sous répertoires aléatoires multiples


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR