Backup automatique des données de thunderbird

comment devrais-je faire pour programmer un backup automatique des données dans thunderbird?
merci d'avance
jpp

3 réponses

  1. 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
  2. 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
    1. 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