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

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Sauvegarde incrémentielle / Xcopy

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Sauvegarde incrémentielle / Xcopy

n°1767762
Kanwulf
Posté le 01-08-2008 à 12:32:20  profilanswer
 

Salut :)
 
Par avance désolé si je ne suis pas dans la bonne section, je déplacerai le topic si c'est le cas.
 
J'utilise depuis un bon moment un .bat pour sauvegarder le contenu de plusieurs dossiers vers un autre disque dur ( sauvegarde incrémentielle ) par un petit .bat
 
Tout fonctionne bien mais j'airerai améliorer la chose, voilà ce que j'ai mis  ( il sagit là d'un dossier contenant beaucoup de photos numériques, donc asser gros ) :
 

@ECHO off
XCOPY "D:\Mes sauvegardes\Photos\Photos Jessy" "G:\Mes sauvegardes\Photos\Photos Jessy" /D/E/I/R/Y/Q


 
Le problème, c'est qu'en visionnant les photos se trouvant sur D:\.... ça change la date, et quand j'y ajoute des photos et que je lance le backup avec le .bat il me copie les photos ajoutés, ce qui est normal mais aussi toutes les photos n'ayant pas la même heure, ce qui est très long sur mon pc :/ en même temps c'est logique, le /D est là pour ça.
 
Ce que je cherche à faire, c'est que le backup se base sur la taille des fichiers et non pas sur la date, j'ai regardé en tapant xcopy /? mais je n'ai pas trouvé une option du genre :
 
"Copier uniquement les fichiers dont la taille source est différente de la taille de destination."
 
Il n'y a vraiment pas moyen de faire ça avec un .bat sans passer par des softs de backup ?  ( une option caché ? je rêve peut-être :D , un /taille :love: ) parce-qu'en lisant les commentaires un peu partout, y'a du bon et du pas bon :/ et étant un peu réticent sur leur efficacité ( peur de tout perdre, sauvegarde mal faite ), je n'ai oser en tester pour le moment.
 
Merci :)


---------------
« Le monde est fondé sur le principe que tous les êtres humains doivent bouffer de la merde, que le goût leur plaise ou pas »
mood
Publicité
Posté le 01-08-2008 à 12:32:20  profilanswer
 

n°1770446
couak
Posté le 07-08-2008 à 00:29:03  profilanswer
 

tu peux regarder du côté de robocopy (dispo en téléchargement un peu partout ou dans le resource kit de microsoft)

n°1771128
Kanwulf
Posté le 08-08-2008 à 12:12:02  profilanswer
 

Merci je vais l'essayer :jap:


---------------
« Le monde est fondé sur le principe que tous les êtres humains doivent bouffer de la merde, que le goût leur plaise ou pas »
n°1771781
blastkille​r
Posté le 11-08-2008 à 01:18:43  profilanswer
 

Il faut faire une verification de la taille :

Code :
  1. @echo off
  2. set dossier1="D:\Mes sauvegardes\Photos\Photos Jessy"
  3. set dossier2="G:\Mes sauvegardes\Photos\Photos Jessy"
  4. for /f "delims" %%a in ('dir /b /s %dossier1%') do call :cmd "%%a"
  5. pause
  6. exit
  7. :cmd
  8. set fichier=%~1
  9. set taille1=%~z1
  10. for /f "delims=" %%b in ('dir /b %dossier2%\"%fichier%"') do set taille2=%%~zb
  11. if not %taille1% EQU %taille2% copy /y %dossier1%\"%fichier%" %dossier2%\"%fichier%"


Message édité par blastkiller le 11-08-2008 à 01:18:58
n°1771918
Kanwulf
Posté le 11-08-2008 à 13:07:24  profilanswer
 

Merci :jap: :)
 
Mais j'ai un petit soucis, j'ai ce message :
 
http://imageshack-france.com/out.php/t186590_MWSnap008.png


---------------
« Le monde est fondé sur le principe que tous les êtres humains doivent bouffer de la merde, que le goût leur plaise ou pas »
n°1771949
blastkille​r
Posté le 11-08-2008 à 14:31:26  profilanswer
 

J'avais oublié un "="

Code :
  1. @echo off
  2. set dossier1="D:\Mes sauvegardes\Photos\Photos Jessy"
  3. set dossier2="G:\Mes sauvegardes\Photos\Photos Jessy"
  4. for /f "delims=" %%a in ('dir /b /s %dossier1%') do call :cmd "%%a"
  5. pause
  6. exit
  7. :cmd
  8. set fichier=%~1
  9. set taille1=%~z1
  10. for /f "delims=" %%b in ('dir /b %dossier2%\"%fichier%"') do set taille2=%%~zb
  11. if not %taille1% EQU %taille2% copy /y %dossier1%\"%fichier%" %dossier2%\"%fichier%"

n°1771950
Kanwulf
Posté le 11-08-2008 à 14:35:57  profilanswer
 

Ok :)
 
Mais maintenant j'ai ce message qui défile à l'infini  :whistle: :
 
http://imageshack-france.com/out.php/t186678_MWSnap016.png


---------------
« Le monde est fondé sur le principe que tous les êtres humains doivent bouffer de la merde, que le goût leur plaise ou pas »
n°1772140
blastkille​r
Posté le 11-08-2008 à 18:34:11  profilanswer
 

Erf j'suis grave mauvais aujourd'hui :
 

Code :
  1. @echo off
  2. set dossier1="D:\Mes sauvegardes\Photos\Photos Jessy"
  3. set dossier2="G:\Mes sauvegardes\Photos\Photos Jessy"
  4. for /f "delims=" %%a in ('dir /b /s %dossier1%') do call :cmd "%%a"
  5. pause
  6. exit
  7. :cmd
  8. set fichier=%~1
  9. if not exist %dossier2%\"%fichier%" copy /y %dossier1%\"%fichier%" %dossier2%\"%fichier%" > NUL& goto :eof
  10. set taille1=%~z1
  11. cd %dossier2%
  12. for /f "delims=" %%b in ('dir /b %dossier2%\"%fichier%"') do set taille2=%%~zb
  13. cd %dossier1%
  14. if not %taille1% EQU %taille2% copy /y %dossier1%\"%fichier%" %dossier2%\"%fichier%" > NUL


Message édité par blastkiller le 11-08-2008 à 18:35:11
n°1772144
Kanwulf
Posté le 11-08-2008 à 18:45:35  profilanswer
 

Y'a toujours un truc qui cloche :D  
 
Enfin, si c'est chaud à faire c'est pas grave ;) c'est déjà super sympa d'essayer :)
 
http://img360.imageshack.us/img360/5748/mwsnap017vu3.th.png


Message édité par Kanwulf le 11-08-2008 à 18:46:30

---------------
« Le monde est fondé sur le principe que tous les êtres humains doivent bouffer de la merde, que le goût leur plaise ou pas »
n°1772405
blastkille​r
Posté le 12-08-2008 à 12:06:14  profilanswer
 

Code :
  1. @echo off
  2. set dossier1=D:\Mes sauvegardes\Photos\Photos Jessy
  3. set dossier2=G:\Mes sauvegardes\Photos\Photos Jessy
  4. for /f "delims=" %%a in ('dir /b /s "%dossier1%"') do call :cmd "%%a"
  5. pause
  6. exit
  7. :cmd
  8. set fichier=%~nx1
  9. if not exist "%dossier2%\%fichier%" copy /y "%dossier1%\%fichier%" "%dossier2%\%fichier%" > NUL& goto :eof
  10. set taille1=%~z1
  11. cd %dossier2%
  12. for /f "delims=" %%b in ('dir /b "%dossier2%\%fichier%"') do set taille2=%%~zb
  13. cd %dossier1%
  14. if not %taille1% EQU %taille2% copy /y "%dossier1%\%fichier%" "%dossier2%\%fichier%" > NUL


 
Voila j'ai testé il marche niquel chez moi
C'est pas que c'est chaud c'est que j'avais la flemme de faire les test :x


Message édité par blastkiller le 12-08-2008 à 12:06:34
mood
Publicité
Posté le 12-08-2008 à 12:06:14  profilanswer
 

n°2147029
grosbin
OR die;
Posté le 25-06-2012 à 12:23:39  profilanswer
 

Hello, je pense qu'il manque une petite chose : la création des sous - répertoires si ces derniers n'existent pas


---------------
Photos Panoramiques Montagnes Haute Savoie

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

  Sauvegarde incrémentielle / Xcopy

 

Sujets relatifs
[MySQL] Probleme sauvegarde/restaurationSauvegarde en JAVA
Sauvegarde d'une hiérarchie d'objetsauvegarde et chargement d'un tableau d'objets (class)
[RESOLU] Sauvegarde automatique SQL chez FreeProblème de sauvegarde d'un add-on pour word
Problème sauvegarde envoi de mails Lotus Notes dans macro VBASauvegarde automatique sous PostGreSQL
[Oracle] Sauvegarde onlineSauvegarde Word au début
Plus de sujets relatifs à : Sauvegarde incrémentielle / Xcopy


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