Menu

Sauvegarde profil Mozilla [Résolu]

Messages postés
21269
Date d'inscription
dimanche 18 janvier 2009
Statut
Contributeur
Dernière intervention
12 février 2019
- - Dernière réponse : fabul
Messages postés
21269
Date d'inscription
dimanche 18 janvier 2009
Statut
Contributeur
Dernière intervention
12 février 2019
- 21 déc. 2018 à 15:11
Bonjour,

J'essaie de créer un batch pour copier les dossiers de profil de Mozilla Firefox, mais je n'avance pas beaucoup, je voudrais que le batch crée un nouveau dossier avec la date/heure ou juste la date, puis copie les dossiers dedans.

J'ai trouvé quelques exemples que j'ai raboutés ensemble et j'ai essayé comme ça mais ça ne marche pas:

SET RepName=%date:~0,2%-%date:~3,2%-%date:~6,4%_%time:~0,2%-%time:~3,2%
MKDIR D:\Backups\Firefox\"%RepName%"
XCOPY %AppData%\Mozilla D:\Backups\Firefox\%RepName%
XCOPY %LocalAppData%\Mozilla D:\Backups\Firefox\%RepName%

Un dossier 20-8--2-19_ 5-25 se crée, mais aucun dossier n'est copié dedans.

De plus, la date / heure qui se présente comme 20-8--2-19_ 5-25 plutôt que 2018-12-19_5-25, ce n'est pas très élégant

Quelqu'un saurait-il me guider ou a un meilleur exemple ?

Merci d'avance

Configuration: Windows 7 / Firefox 52.0.2
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
12163
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
14 février 2019
2435
2
Merci
Bonjour,

Voilà un script fait entièrement par moi qui permet de sauvegarder ton profil Firefox :

@echo off
title Sauvegarde-Restauration de FIREFOX
mode con cols=110 lines=30
chcp 1252 >nul
Setlocal enableextensions enabledelayedexpansion
color 0A

:: ------------------------------------------------------
:: on check la version de windows et on arrête Firefox
:: ------------------------------------------------------

(ver | find "5.") && (goto :eof)
rem (tasklist | find "firefox") && (goto :eof)

:: ---------------------------
:: on définit les variables
:: ---------------------------

set source=%APPDATA%\Mozilla\Firefox
set destination=D:\Sauvegardes Firefox
set dossier=%date:~6,4%%date:~3,2%%date:~0,2%

:: ----------------------------------------------------------------
:: ----------------------programme principal ----------------------
:: ----------------------------------------------------------------

if "A%~1A"=="AA" (call :sauvegarde "Profiles" "%destination%" "%dossier%")
if exist "%~1" (call :restauration "%~1" "Profiles" "%source%")

Endlocal
exit /B 0

:: -----------------------------------
:: fonction de sauvegarde du profil
:: -----------------------------------

:sauvegarde
set retention=7

if not exist "%~2\%~3" (mkdir "%~2\%~3")

echo. & echo Le dossier de sauvegarde sera = %~2\%~3
timeout /T 6

cls & echo.
echo ****** La sauvegarde de FIREFOX va commencer ******
echo.
ping -n 4 127.0.0.1 >nul

%source:~0,2% & cd %source%
xcopy "%~1" "%~2\%~3\%~1\" /E /H /K /Y

cls & echo.
echo ****** Sauvegarde FIREFOX terminée ******
echo. & echo. & echo. & echo. & echo. & echo.

call :rotation "%~2" %retention%
goto :eof

:: ---------------------------------------
:: fonction de rotation des sauvegardes
:: ---------------------------------------

:rotation
echo ****** Suppression des sauvegardes antérieures à %2 jours ******
echo.

for /D %%A in ("%~1\*") do (

set /a archive=%%~nA
set /a decote=69

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

for %%B in (5,7,10,12) do (if %date:~3,2% EQU %%B (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 %2 (echo ==^>^> %~1\%%~nA & rmdir /s /q "%~1\%%~nA")

)

ping -n 4 127.0.0.1 >nul
goto :eof

:: -------------------------------------
:: fonction de restauration du profil
:: -------------------------------------

:restauration
%~d1 & cd %~1

if exist "%~2" (xcopy "%~2" "%~3\%~2\" /E /H /K /Y)
timeout /T 10

goto :eof
rem


Je m'en sers tous les jours via une tâche planifiée, cela me permet d'avoir une semaine de sauvegarde disponible en cas de besoin.

La restauration d'un profil se fait simplement en faisant un glisser-déposer du dossier sur l'icône du script.


“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”

Dire « Merci » 2

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 57888 internautes nous ont dit merci ce mois-ci

fabul
Messages postés
21269
Date d'inscription
dimanche 18 janvier 2009
Statut
Contributeur
Dernière intervention
12 février 2019
2513 -
Merci, c'est efficace!
Commenter la réponse de barnabe0057
Messages postés
21269
Date d'inscription
dimanche 18 janvier 2009
Statut
Contributeur
Dernière intervention
12 février 2019
2513
0
Merci
J'ai aussi trouvé ces commandes, qui affichent une date plus lisible 2018-12-19 mais je ne sais comment copier dans le dosier %name% après l'avoir crée.

setlocal enableextensions
set name=%DATE:/=_%
mkdir D:\Backups\Firefox\%name%

Quand je met ça avec ou sans les guillemets il crée un dossier 20-8--2-19_10-01 mais rien ne se copie, on dirait une commande en boucle infinie ? Je n'ai pas attendu longtemps pour l'arrêter.

setlocal enableextensions
set name=%DATE:/=_%
mkdir D:\Backups\Firefox\%name%
XCOPY "%AppData%\Mozilla" "D:\Backups\Firefox\%name%"
XCOPY "%LocalAppData%\Mozilla" "D:\Backups\Firefox\%name%"
Commenter la réponse de fabul
Messages postés
17613
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
15 février 2019
6008
0
Merci
hello
essayer avec
XCOPY "%AppData%\Mozilla" "D:\Backups\Firefox\%name% /s /e /h /y"
XCOPY "%LocalAppData%\Mozilla" "D:\Backups\Firefox\%name% /s /e /h /y"

help xcopy
..
/s
À moins qu'ils ne soient vides, copie les répertoires et les sous-répertoires. En l'absence de cette option de ligne de commandes, xcopy travaille dans un seul répertoire.
/e
Copie tous les sous-répertoires, même s'ils sont vides. Utilisez /e en combinaison avec les options de ligne de commandes /s et /t.
/h
Copie les fichiers dotés des attributs fichier caché et fichier système. Par défaut, la commande xcopy ne copie pas les fichiers cachés ou les fichiers système.
/y
Supprime la demande de confirmation de remplacement d'un fichier de destination existant.
fabul
Messages postés
21269
Date d'inscription
dimanche 18 janvier 2009
Statut
Contributeur
Dernière intervention
12 février 2019
2513 -
Salut, et merci de t’intéresser,

J'ai essayé

SET RepName=%date:~0,2%-%date:~3,2%-%date:~6,4%_%time:~0,2%-%time:~3,2%
MKDIR D:\Backups\Firefox\"%RepName%"
XCOPY "%AppData%\Mozilla" "D:\Backups\Firefox\%name% /s /e /h /y"
XCOPY "%LocalAppData%\Mozilla" "D:\Backups\Firefox\%name% /s /e /h /y"

il crée un répertoire 20-8--2-21_ 6-40

Il me demande si c'est un répertoire ou un fichier 2 fois, je répond R deux fois , mais il ne copie rien.

J'ai essayé

setlocal enableextensions
set name=%DATE:/=_%
mkdir D:\Backups\Firefox\%name%
XCOPY "%AppData%\Mozilla" "D:\Backups\Firefox\%name% /s /e /h /y"
XCOPY "%LocalAppData%\Mozilla" "D:\Backups\Firefox\%name% /s /e /h /y"

Il crée un répertoire 2018-12-21 , la la date est bien écrite,

Il me demande si c'est un répertoire ou un fichier 2 fois, je répond R deux fois , mais encore, il ne copie rien.
dubcek
Messages postés
17613
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
15 février 2019
6008 -
c'est dans un .bat ou en ligne de commande ?
fabul
Messages postés
21269
Date d'inscription
dimanche 18 janvier 2009
Statut
Contributeur
Dernière intervention
12 février 2019
2513 -
dans un .bat
dubcek
Messages postés
17613
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
15 février 2019
6008 -
essayer
XCOPY /s /e /h /y /i "%AppData%\Mozilla" "D:\Backups\Firefox\%name%"
XCOPY /s /e /h /y /i "%LocalAppData%\Mozilla" "D:\Backups\Firefox\%name%"


Firefox doit êre fermé pour que la copie soit complète
fabul
Messages postés
21269
Date d'inscription
dimanche 18 janvier 2009
Statut
Contributeur
Dernière intervention
12 février 2019
2513 -
Oui, c'est bien, ça a copié, et sans poser de question, merci, ça marche.

Mais, ça a fait une compilation des contenus des deux dossiers:
"%AppData%\Mozilla"
"%LocalAppData%\Mozilla"

Je crois que je n'ai pas besoin de sauvegarder le contenu de %LocalAppData% en fait, c'est inutile, juste besoin de l'autre, donc ça peut bien marcher pour seulement le contenu de %AppData%\Mozilla (AppData\Roaming\Mozilla) avec ce code

setlocal enableextensions
set name=%DATE:/=_%
mkdir D:\Backups\Firefox\%name%
XCOPY /s /e /h /y /i "%AppData%\Mozilla" "D:\Backups\Firefox\%name%"
Commenter la réponse de dubcek