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
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
A voir également:
- Backup thunderbird
- Message d'absence thunderbird - Guide
- Cobian backup - Télécharger - Sauvegarde
- Thunderbird mail - Télécharger - Mail
- Windows backup - Accueil - Installation
- Logiciel backup - Guide
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
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
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
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.
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.
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
Modifié par barnabe0057 le 28/01/2017 à 20:41
Voilà le batch :
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 ;)
@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 ;)
1 févr. 2017 à 13:49