Backup automatique des données de thunderbird

Fermé
jpp - 28 janv. 2017 à 15:35
barnabe0057 Messages postés 14452 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 3 août 2024 - 1 févr. 2017 à 13:49
comment devrais-je faire pour programmer un backup automatique des données dans thunderbird?
merci d'avance
jpp
A voir également:

3 réponses

barnabe0057 Messages postés 14452 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 3 août 2024 4 917
1 févr. 2017 à 13:31
Voilà une nouvelle version qui corrige un petit problème :

@echo off

set source=%APPDATA%\Thunderbird

set destination=D:\Sauvegarde Thunderbird

set retention=7

tasklist | find "thunderbird" && taskkill /IM thunderbird.exe /T

cls & echo. & color 0A

echo ****** La sauvegarde de THUNDERBIRD va commencer ******

echo.

ping -n 7 127.0.0.1 > nul

if %source:~0,2% EQU %CD:~0,2% (cd %source% || goto :eof) else (cd /d %source% || goto :eof)

if not exist "%destination%\%date:~6,4%%date:~3,2%%date:~0,2%" mkdir "%destination%\%date:~6,4%%date:~3,2%%date:~0,2%"

xcopy "Profiles" "%destination%\%date:~6,4%%date:~3,2%%date:~0,2%\Profiles\" /E /H /K /Y || goto :eof

cls & echo.

echo ****** Sauvegarde THUNDERBIRD OK ******

echo. & echo. & echo. & echo. & echo. & echo.

echo ****** Suppression des sauvegardes plus anciennes que %retention% jours ******

Setlocal enableextensions enabledelayedexpansion

for /f "tokens=*" %%A In ('dir /b /ad "%destination%\*.*"') do (

set /a archive=%%A

set /a decote=69

if %date:~3,2% EQU 3 (set /a decote=!decote!+2)

if %date:~3,2% EQU 5 (set /a decote=!decote!+1)

if %date:~3,2% EQU 7 (set /a decote=!decote!+1)

if %date:~3,2% EQU 10 (set /a decote=!decote!+1)

if %date:~3,2% EQU 12 (set /a decote=!decote!+1)

set /a cejour=%date:~6,4%%date:~3,2%%date:~0,2%

set /a result=!cejour!-!archive!

if !result! GEQ 70 (set /a result=!result!-!decote!)

if !result! GEQ %retention% (rmdir /s /q "%destination%\%%A")

)

Endlocal

ping -n 3 127.0.0.1 > nul

:eof
1
barnabe0057 Messages postés 14452 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 3 août 2024 4 917
1 févr. 2017 à 13:49
0
barnabe0057 Messages postés 14452 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 3 août 2024 4 917
28 janv. 2017 à 16:12
Pour sauvegarder il faut copier ton profil dans la destination de ton choix.

Si tu veux automatiser tout ça, je peux te concevoir un script qui se chargera de ça.

Dis-moi juste dans quel dossier tu veux que j'envoie la sauvegarde.
0
barnabe0057 Messages postés 14452 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 3 août 2024 4 917
Modifié par barnabe0057 le 28/01/2017 à 20:41
Voilà le batch :

@echo off

set source=%APPDATA%\Thunderbird

set destination=%USERPROFILE%\Documents\Sauvegarde Thunderbird

set retention=7

tasklist | find "thunderbird" && taskkill /IM thunderbird.exe /T

cls & echo. & color 0A

echo ****** La sauvegarde de THUNDERBIRD va commencer ******

echo.

ping -n 7 127.0.0.1 > nul

if %source:~0,2% EQU %CD:~0,2% (cd %source% || goto :eof) else (cd /d %source% || goto :eof)

if not exist "%destination%\%date:~6,4%%date:~3,2%%date:~0,2%" mkdir "%destination%\%date:~6,4%%date:~3,2%%date:~0,2%"

xcopy "Profiles" "%destination%\%date:~6,4%%date:~3,2%%date:~0,2%\Profiles\" /E /H /K /Y || goto :eof

cls & echo.

echo ****** Sauvegarde THUNDERBIRD OK ******

echo. & echo. & echo. & echo. & echo. & echo.

echo ****** Suppression des sauvegardes plus anciennes que %retention% jours ******

Setlocal enableextensions enabledelayedexpansion

for /f "tokens=*" %%A In ('dir /b /ad "%destination%\*.*"') do (

set /a archive=%%A

set /a cejour=%date:~6,4%%date:~3,2%%date:~0,2%

set /a result=!cejour!-!archive!

if !result! GEQ %retention% (rmdir /s /q "%destination%\%%A")

)

Endlocal

ping -n 3 127.0.0.1 > nul

:eof


Tu peux modifier la troisième ligne (set destination= ) pour mettre le dossier de destination de ton choix.

J'ai mis en place une rotation des sauvegardes, celles antérieures à 7 jours sont supprimées.

Sur mon pc, j'ai crée une tâche via le "planificateur de tâches" qui exécute ce script tous les jours à la même heure.

J'espère que ça te conviendra ;)
0