Sauvegarde incrémentielle / Xcopy

Sauvegarde incrémentielle / Xcopy - Shell/Batch - Programmation

Marsh Posté le 01-08-2008 à 12:32:20    

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 »
Reply

Marsh Posté le 01-08-2008 à 12:32:20   

Reply

Marsh Posté le 07-08-2008 à 00:29:03    

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

Reply

Marsh Posté le 08-08-2008 à 12:12:02    

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 »
Reply

Marsh Posté le 11-08-2008 à 01:18:43    

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
Reply

Marsh Posté le 11-08-2008 à 13:07:24    

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 »
Reply

Marsh Posté le 11-08-2008 à 14:31:26    

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%"

Reply

Marsh Posté le 11-08-2008 à 14:35:57    

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 »
Reply

Marsh Posté le 11-08-2008 à 18:34:11    

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
Reply

Marsh Posté le 11-08-2008 à 18:45:35    

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 »
Reply

Marsh Posté le 12-08-2008 à 12:06:14    

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
Reply

Marsh Posté le 12-08-2008 à 12:06:14   

Reply

Marsh Posté le 25-06-2012 à 12:23:39    

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
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed