Ca y est ! J'ai pu faire ce que je voulais : sauvegarder mes profils Firefox et Thunderbird, peu importe où ils sont situés (du moment qu'ils sont accessibles par l'explorateur, naturellement).
Il suffit de copier les lignes ci-dessous dans un fichier .bat à lancer comme un exécutable.
C'est hyper simple à utiliser, aucune installation de logiciels de backup à faire, et c'est méga rapide !!
Voici mon code, si ca peut vous servir :
(et merci à vous pour l'aide)
@echo off
if "%os%" =="Windows_NT" color
title Sauvegarde des donnees de %USERNAME%
set RepertoireBackup="ou_on_veut"
echo.
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º Sauvegarde vers : %RepertoireBackup%
echo º Pour l'utilisateur %USERNAME%
echo º - L'affichage devient bleu si erreur -
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
echo ÍÍÍÍÍÍÍÍÍÍ Thunderbird ÍÍÍÍÍÍÍÍÍÍ
xcopy "%APPDATA%\Thunderbird" "%RepertoireBackup%\%USERNAME%\Application Data\Thunderbird\" /V /F /H /R /Y /I /D /K /Z
if errorlevel 2 goto abort
if errorlevel 4 goto lowmemory
if errorlevel 5 goto writeerror
REM IsRelative = 1 ?
for /f "skip=5 tokens=2 delims==" %%i in ('type "%APPDATA%\Thunderbird\profiles.ini"') do set IsRelativeThunderbird=%%i & goto suitMailsThunderbird1
:suitMailsThunderbird1
for /f "skip=6 tokens=2 delims==" %%i in ('type "%APPDATA%\Thunderbird\profiles.ini"') do set RepMailsThunderbird=%%i & goto suitMailsThunderbird2
:suitMailsThunderbird2
REM on enleve le dernier caractère (un espace)
set RepMailsThunderbird=%RepMailsThunderbird:~,-1%
REM on met des anti-slashes à la place des slahes
set RepMailsThunderbird=%RepMailsThunderbird:/=\%
REM on créé l'arborescence complète de destination
if %IsRelativeThunderbird%==1 set RepBackupMailsThunderbird=%USERNAME%\Application Data\Thunderbird\%RepMailsThunderbird%
REM si le chemin est relatif on ajoute l'arborescence
if %IsRelativeThunderbird%==1 set RepMailsThunderbird=%APPDATA%\Thunderbird\%RepMailsThunderbird%
if %IsRelativeThunderbird%==0 set RepBackupMailsThunderbird=%RepMailsThunderbird::=_%
if exist "%RepMailsThunderbird%\parent.lock" call:afficher_message "Fermez Thuderbird !"
if not exist "%RepMailsThunderbird%\parent.lock" (
if exist %RepMailsThunderbird% xcopy %RepMailsThunderbird% "%RepertoireBackup%\%RepBackupMailsThunderbird%\" /V /F /E /H /R /Y /I /D /K /Z
)
if errorlevel 2 goto abort
if errorlevel 4 goto lowmemory
if errorlevel 5 goto writeerror
echo ÍÍÍÍÍÍÍÍÍÍ Firefox ÍÍÍÍÍÍÍÍÍÍ
xcopy "%APPDATA%\Mozilla\Firefox" "%RepertoireBackup%\%USERNAME%\Application Data\Mozilla\Firefox\" /V /F /H /R /Y /I /D /K /Z
for /f "skip=5 tokens=2 delims==" %%i in ('type "%APPDATA%\Mozilla\Firefox\profiles.ini"') do set IsRelativeFirefox=%%i & goto suitFirefox1
:suitFirefox1
for /f "skip=6 tokens=2 delims==" %%i in ('type "%APPDATA%\Mozilla\Firefox\profiles.ini"') do set RepFirefox=%%i & goto suitFirefox2
:suitFirefox2
REM on enleve le dernier caractère (un espace)
set RepFirefox=%RepFirefox:~,-1%
REM on met des anti-slashes à la place des slahes
set RepFirefox=%RepFirefox:/=\%
REM on créé l'arborescence complète de destination
if %IsRelativeFirefox%==1 set RepBackupFirefox=%USERNAME%\Application Data\Mozilla\Firefox\%RepFirefox%
if %IsRelativeFirefox%==1 set RepFirefox=%APPDATA%\Mozilla\Firefox\%RepFirefox%
if %IsRelativeFirefox%==0 set RepBackupFirefox=%RepFirefox::=_%
if exist "%RepFirefox%\parent.lock" call:afficher_message "Fermez Firefox !"
if not exist "%RepFirefox%\parent.lock" (
if exist "%RepFirefox%" xcopy "%RepFirefox%" "%RepertoireBackup%\%RepBackupFirefox%\" /V /F /E /H /R /Y /I /D /K /Z
)
if errorlevel 2 goto abort
if errorlevel 4 goto lowmemory
if errorlevel 5 goto writeerror
:abort
REM Code 2 : L'utilisateur a appuyé sur CTRL+C pour arrêter l'exécution de la commande xcopy. echo Fichier verrouillé ou vous avez appuyé sur CTRL+C pour mettre fin à la copie.
echo %Date%;%USERNAME%;%TempsDebut%;%Time%;ERREUR-Accès à un fichier vérrouillé (lock Firefox/Thunderbird ?) ou Annulé par l'utilisateur >> %FichierLog%
REM echo. >> %FichierLog%
goto exit
:lowmemory
REM Code 4 : Une erreur d'initialisation s'est produite. La mémoire ou l'espace disque est insuffisant, ou vous avez entré un nom de lecteur ou une syntaxe non valide sur la ligne de commandes.
echo Mémoire insuffisante pour copier les fichiers ou
echo lecteur ou syntaxe de ligne de commandes non valide.
echo %Date%;%USERNAME%;%TempsDebut%;%Time%;ERREUR-Espace disque insuffisant >> %FichierLog%
REM echo. >> %FichierLog%
goto exit
:writeerror
REM Code 5 : Une erreur d'écriture s'est produite sur le disque. echo %Date%;%USERNAME%;%TempsDebut%;%Time%;ERREUR d'écriture sur le disque >> %FichierLog%
REM echo. >> %FichierLog%
goto exit
:afficher_message
if "%os%" =="Windows_NT" color 1F
echo.
echo -----------------------------------
echo %1
echo -----------------------------------
echo.
REM Sortie de la fonction goto:EOF :exit
|
Message édité par sieurcoug le 09-03-2007 à 15:24:49