Une bonne sauvegarde avant formatage avec cmd xcopy (merci a gcc)

bonjour à tous,

j’espère que mon poste se trouve dans la bonne rubrique…

situation de départ :

  • j’installe régulièrement windows pour des copins… Et tres souvant apres le formatage des données sont perdu car elles sont dispercées un peu partout dans le c:

idée :
mon idée est de créer un .bat qui rechercherai tous les .doc,. xls,.odt… sur c: et les copierai dans un dossier de mon choix.

j’ai essayé avec la commande dos xcopy mais comme je suis pas super fortiche je suis obligé de taper tous les dossier “classique” de windows ou les personnes rengent des données

si il y a une solution j’aimerai bien arriver a créer ce bat avec votre aide

merci d’avance
Edité le 04/11/2007 à 23:10

avec xcopy /s tu copies les répertoires et ses répertoires, donc en l’appliquant à la racine, tu devrais t’en sortir
Sinon, tu utilises une boucle FOR /R et la commande copy

Une condition quand même dans les deux cas : il faut que ton répertoire de destination soit sur un autre disque, sinon tu risques de boucler indéfiniment

est-il possible tu m’écrives un exemple en supposant que je veux rechercher et copier tous les .doc présent sur c : et les envoyer sur le disque d:

merci beaucoup, je comprends ce que tu écris mais mon niveau en dos est si faible que je n’arrive pas a appliquer ce que tu m’explique :wink:

Tu n’y arriveras pas en une seule fois : il faut que tu fasses un fichier batch avec autant de lignes que d’extensions à traiter.
Le mieux est de placer le .bat à la racine de ta cible. La syntaxe est alors :

@echo off
xcopy /s c:.doc
xcopy /s c:
.xls
xcopy /s c:*.reg
etc.

Pour la deuxième syntaxe
@echo off
for /R c:\ %%i in (.doc) do copy %%i
for /R c:\ %%i in (
.xls) do copy %%i
for /R c:\ %%i in (*.reg) do copy %%i
etc.

Edit :
Les deux méthodes ne sont pas équivalentes. Dans le premier cas, tu reconstitues toute l’arborescence d’origine, dans le second, tous les fichiers sont dans le meme répertoire (D : \ ) d’où risque d’écrasement en cas d’homonyme
Edité le 04/11/2007 à 21:22

merci gcc ça marche super bien et grace a toi je vais pouvoir formater l’esprit libre

voila comment je fais :

1/ branchement du hdd en usb
2/clic droit, géer sur poste de travail dans la gestion des disque dur je donne z: a mon hdd externe
3/je lance le .bat

je pense avoir les principales extentions de fichiers.

voici le . bat pour ceux qui comme moi ne veulent pas oublier un fichier dans un sous répertoire :

@echo off
xcopy /s C:.doc Z:\binbin\bureautique\word
xcopy /s C:
.xls Z:\binbin\bureautique\excel
xcopy /s C:.xla Z:\binbin\bureautique\excel
xcopy /s C:
.xlt Z:\binbin\bureautique\excel
xcopy /s C:.docx Z:\binbin\bureautique\word
xcopy /s C:
.xlsx Z:\binbin\bureautique\excel
xcopy /s C:.dot Z:\binbin\bureautique\modeles
xcopy /s C:
.ppt Z:\binbin\bureautique\power_point
xcopy /s C:.pot Z:\binbin\bureautique\power_point
xcopy /s C:
.pps Z:\binbin\bureautique\power_point
xcopy /s C:.txt Z:\binbin\bureautique\note_pad
xcopy /s C:
.rtf Z:\binbin\bureautique\note_pad
xcopy /s C:.odt Z:\binbin\bureautique\open_office
xcopy /s C:
.pdf Z:\binbin\bureautique\documents_pdf
xcopy /s C:.ttf Z:\binbin\bureautique\polices
xcopy /s C:
.eml Z:\binbin\bureautique\courrier_web
xcopy /s C:.ost Z:\binbin\bureautique\contact_web
xcopy /s C:
.mdb Z:\binbin\bureautique\acces
xcopy /s C:*.pub Z:\binbin\bureautique\publisher

xcopy /s C:.avi Z:\binbin\multimedia\videos
xcopy /s C:
.mpeg Z:\binbin\multimedia\videos
xcopy /s C:.mpg Z:\binbin\multimedia\videos
xcopy /s C:
.mpe Z:\binbin\multimedia\videos
xcopy /s C:.qt Z:\binbin\multimedia\videos
xcopy /s C:
.mov Z:\binbin\multimedia\videos
xcopy /s C:*.swf Z:\binbin\multimedia\videos\flash

xcopy /s C:.jpg Z:\binbin\multimedia\images
xcopy /s C:
.jpeg Z:\binbin\multimedia\images
xcopy /s C:.gif Z:\binbin\multimedia\images
xcopy /s C:
.jep Z:\binbin\multimedia\images
xcopy /s C:.png Z:\binbin\multimedia\images
xcopy /s C:
.psp Z:\binbin\multimedia\images
xcopy /s C:.psd Z:\binbin\multimedia\photoshop
xcopy /s C:
.ai Z:\binbin\multimedia\illustrator
xcopy /s C:.bmp Z:\binbin\multimedia\images_windows
xcopy /s C:
.cdr Z:\binbin\multimedia\corel

xcopy /s C:.cda Z:\binbin\multimedia\musique
xcopy /s C:
.qxf Z:\binbin\multimedia\musique
xcopy /s C:.ogg Z:\binbin\multimedia\musique
xcopy /s C:
.mp3 Z:\binbin\multimedia\musique
xcopy /s C:*.wav Z:\binbin\multimedia\son

xcopy /s C:.zip Z:\binbin\archives\fichier_zip
xcopy /s C:
.rar Z:\binbin\archives\fichier_rar
xcopy /s C:*.iso Z:\binbin\archives\image_disk

ps : j’ai juste un problème la cmd me demande pour chaque création de répertoire une confirmation c’est un peu lourd s’il y a plusieurs go de données… Donc si vous avez la solution le .bat serai parfait pour moi !

en image :
http://nsa01.casimages.com/img/2007/11/04/0711041108101537808.jpg

Accessoirement, tu as des utilitaires de backup pour ça. C’est peut-être plus pratique, et faut avouer qu’en général tu mets tout dans un dossier (Mes documents, Bureau, etc).

Pour ton problème, il peut se résoudre en créant ton dossier avant. Tu dois pouvoir “ruser” et faire une fonction avec des label, genre :

:copy
rem %1 = *.XXX %2 = chemin
mkdir “%2”
xcopy /s %1 %2

puis : call :copy C:*.zip …

Mais bref, à tester.

pour connaitre les options d’une commande c’est le nom de la commande suivie de /?
donc si tu tapes
xcopy /?
tu auras toutes les options de cette commande et tu verras que pour répondre à ta question c’est l’option /I qui convient

Si tu utilises ce .bat, fais bien attention d’être positionné à la racine de C avant de passer à D comme lecteur par défaut.
Sinon tu ne prendras que les sous répertoire de la branche dans laquelle tu te trouves.
D’où l’intérêt de forcer le programme à travailler depuis la racine [b]C : [/b] (sans les espaces, bien entendu)

Pour ce qui est de la confirmation, /I devrait résoudre ton problème, sinon essaie d’y ajouter /Y

non je ne veux pas d’utilitaires car aucun ne fait 2ko sans aucune installation. Et puis il y a le plaisir de réaliser un petit truc a soit qui n’est ma fois pas de la programmation mais si j’arrive a faire tourner mon idee je vais gagner un max de temps de plus avec les logiciels de telechargement beaucoup de données peuvent se trouver dans progam files…

merci pour ton aide je vais essayer ta méthode

Bah c’est pas que c’est moins bien, c’est juste que tu rateras forcément des trucs.

Déjà, entre nous, j’aurai copié toute la racine de %USERPROFILE%, etc. histoire d’être sûr d’avoir tout; on ne sait jamais honnêtement:)