Scinder le xcopy

[Fermé]
Signaler
Messages postés
61
Date d'inscription
vendredi 24 octobre 2003
Statut
Membre
Dernière intervention
3 avril 2012
-
Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
-
Bonjour,

J'ai créé un fichier batch qui fonctionne très bien à une exception : la copie du répertoire C:\Users\Toto\Pictures.
La copie ne va pas jusqu'au bout car j'ai un message "Mémoire insuffisante" qui apparaît.
Etant donné que j'ai beaucoup de dossiers et de fichiers, je souhaiterais scinder la copie pour avoir 5 ou 10 lignes plutôt qu'une seule.

Actuellement :
xcopy C:\Users\Toto\Pictures\*.* I:\Sauvegarde\Photos\*.* /S /H /Y

Souhait :
xcopy C:\Users\Toto\Pictures\*.* I:\Sauvegarde\Photos\*.* /H /Y (sans le /S pour ne pas prendre les sous-répertoires mais uniquement les fichiers présents à la racine : ligne OK)
xcopy C:\Users\Toto\Pictures\[Tous les répertoires commençant par 2010]\*.* I:\Sauvegarde\Photos\*.* /S /H /Y
xcopy C:\Users\Toto\Pictures\[Tous les répertoires commençant par 2011]\*.* I:\Sauvegarde\Photos\*.* /S /H /Y
etc.

Comment je dois écrire la partie entre crochets ?
J'ai essayé :
xcopy C:\Users\Toto\Pictures\%2010\*.* I:\Sauvegarde\Photos\*.* /S /H /Y
xcopy C:\Users\Toto\Pictures\%2010%\*.* I:\Sauvegarde\Photos\*.* /S /H /Y

Merci d'avance

7 réponses

Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
5 331
hello
essayer
xcopy C:\Users\Toto\Pictures\2010*.* I:\Sauvegarde\Photos\*.* /S /H /Y
xcopy C:\Users\Toto\Pictures\2011*.* I:\Sauvegarde\Photos\*.* /S /H /Y
Messages postés
61
Date d'inscription
vendredi 24 octobre 2003
Statut
Membre
Dernière intervention
3 avril 2012
36
Merci beaucoup. Ces lignes fonctionnent effectivement mais uniquement sur les fichiers ... tout commen la commande suivante :
xcopy C:\Users\Toto\Pictures\*2010*.* I:\Sauvegarde\Photos\*.* /S /H /Y

Problème important donc : cela sauvagrde uniquement les fichiers contenant "2010" ou "2011" uniquement. Or, un répertoire 2010-03 ne sera pas sauvegarder si des fichiers à l'intérieur sont nommés "Photos1", "Photos2", etc.

Peux-t-on faire une ligne de commande pour restreindre la copie des répertoires et non des fichiers ?

Merci encore
Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
5 331
avec l'option /s 2010* doit sauver 2010-03 et tout ce qu'il y a dessous
Messages postés
61
Date d'inscription
vendredi 24 octobre 2003
Statut
Membre
Dernière intervention
3 avril 2012
36
Malheureusement non, les lignes suivantes ne sauvegardent rien contenant 2010 :

- xcopy C:\Users\Toto\Pictures\*.* I:\Sauvegarde\Photos\*.* /S 2010* /H /Y
ou
- xcopy C:\Users\Toto\Pictures\2010*.* I:\Sauvegarde\Photos\*.* /S 2010* /H /Y

Y a-t-il qq chose que j'écris mal ?
Merci
Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
5 331
xcopy Source [Destination ...
essayer comme ça, avec des " si il y a des espaces
xcopy "C:\Users\Toto\Pictures\2010*.*" "I:\Sauvegarde\Photos\" /S/H /Y
Messages postés
61
Date d'inscription
vendredi 24 octobre 2003
Statut
Membre
Dernière intervention
3 avril 2012
36
Avec cette ligne de commande :
xcopy "C:\Users\Toto\Pictures\2010*.*" "I:\Sauvegarde\Photos\*.*" /S /H /Y
Même constat que précédemment, seuls les fichiers ayant 2010 dans leur nom sont sauvés.

Avec celle-ci :
xcopy "C:\Users\Toto\Pictures\2010*.*" "I:\Sauvegarde\Photos\*.*" /S 2010* /H /Y
Rien n'est sauvé

Et enfin avec celle-ci :
xcopy "C:\Users\Toto\Pictures\*.*" "I:\Sauvegarde\Photos\*.*" /S 2010 */H /Y
Idem, rien n'est sauvegardé

Désolé mais les guillements n'ont rien changé (je prévois exprès des noms de dossiers sans espaces).
Merci encore de votre aide.
Messages postés
18247
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
2 août 2021
5 331
effectivement xcopy 2010* ne fonctionne pas
essayer :
for /d %%a in (2010*) do xcopy C:\Users\Toto\Pictures\%%a I:\Sauvegarde\Photos\%%a /S/H /Y/I