Sauvegarde profil Mozilla

Résolu/Fermé
fabul Messages postés 37703 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 25 avril 2024 - 19 déc. 2018 à 11:41
fabul Messages postés 37703 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 25 avril 2024 - 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
A voir également:

3 réponses

barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
Modifié le 19 déc. 2018 à 21:17
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.

2
fabul Messages postés 37703 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 25 avril 2024 5 172
19 déc. 2018 à 21:33
Merci, c'est efficace!
0
fabul Messages postés 37703 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 25 avril 2024 5 172
Modifié le 19 déc. 2018 à 16:12
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%"
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
Modifié le 21 déc. 2018 à 11:43
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.
0
fabul Messages postés 37703 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 25 avril 2024 5 172
21 déc. 2018 à 12:46
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.
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
21 déc. 2018 à 13:26
c'est dans un .bat ou en ligne de commande ?
0
fabul Messages postés 37703 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 25 avril 2024 5 172
21 déc. 2018 à 13:53
dans un .bat
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
Modifié le 21 déc. 2018 à 15:04
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
0
fabul Messages postés 37703 Date d'inscription dimanche 18 janvier 2009 Statut Modérateur Dernière intervention 25 avril 2024 5 172
Modifié le 21 déc. 2018 à 15:11
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%"
0