|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Бекап дефолтного юзер-профиля браузера Vivaldi |
|
CMD/BAT - [решено] Бекап дефолтного юзер-профиля браузера Vivaldi
|
Новый участник Сообщения: 8 |
Профиль | Отправить PM | Цитировать
Приветствую всех читающих этот тред.
Пытаюсь написать сценарий резервного копирования и архивации, дефолтного юзер-профиля браузера Vivaldi. Прошу помощи в написании, а именно: обнаружение и указание на правку грубых, а так же нелепых ошибок, подсказок в виде оптимального кода, поскольку моё понимание кода, приходит только в визуальном сравнении. По возможности кратко объяснить или точно, с указанием маршрута, послать в раздел справки или к готовым решениям на форуме. В идеале - всё отточить, сделать Код:
cls @echo off title Backup profile Vivaldi setlocal rem Задаём переменную VIVALDI - Путь к каталогу браузера set VIVALDI=%LocalAppData%\Vivaldi rem Задаём переменную END, куда будет помещён архив (например "C:\Users\XXXXX\Documents") set END=%HomePath%\Documents rem Задаём переменные для создания имени файла архива из текущей даты и времени set vdate=%date:~-10% set vtime=%time:~0,-3% set vtime=%vtime::=.% rem Задаём переменную DEFAULT и создаём каталог сбора файлов (например в системной "Temp") set DEFAULT=%Temp%\Vivaldi\User Data\Default mkdir "%DEFAULT%\" rem Копируем нужные нам папки из каталога (точнее из "User Data / Default") xcopy "%VIVALDI%\User Data\Default\databases" "%DEFAULT%\databases" /s /q /i /v xcopy "%VIVALDI%\User Data\Default\Extension Rules" "%DEFAULT%\Extension Rules" /s /q /i /v xcopy "%VIVALDI%\User Data\Default\Extensions" "%DEFAULT%\Extensions" /s /q /i /v xcopy "%VIVALDI%\User Data\Default\Local App settings" "%DEFAULT%\Local App settings" /s /q /i /v xcopy "%VIVALDI%\User Data\Default\Local Extension settings" "%DEFAULT%\Local Extension settings" /s /q /i /v xcopy "%VIVALDI%\User Data\Default\Local Storage" "%DEFAULT%\Local Storage" /s /q /i /v rem Копируем файлы copy /v "%VIVALDI%\User Data\Default\Bookmarks" "%DEFAULT%\Bookmarks" copy /v "%VIVALDI%\User Data\Default\Favicons" "%DEFAULT%\Favicons" copy /v "%VIVALDI%\User Data\Default\file_mapping.json" "%DEFAULT%\file_mapping.json" copy /v "%VIVALDI%\User Data\Default\Login Data" "%DEFAULT%\Login Data" copy /v "%VIVALDI%\User Data\Default\Preferences" "%DEFAULT%\Preferences" copy /v "%VIVALDI%\User Data\Default\Secure Preferences" "%DEFAULT%\Secure Preferences" rem Создаём файл "First Run" - маркер для браузера, что первый запуск и настройка произведены copy nul "%Temp%\Vivaldi\User Data\First Run" rem Копируем кастомные логотипы сайтов экспресс-панели (задайте свой путь или переменную) xcopy "%VIVALDI%\IMG" "%Temp%\Vivaldi\IMG" /s /q /i /v rem Запускаем процесс создания архива 7za.exe a -tzip "%Temp%\backup.zip" "%Temp%\Vivaldi\" C: rem Перемещаем готовый архив, с переименованием <дата, время> в каталог юзера move "%Temp%\backup.zip" "%END%\%vdate%,%vtime%.zip" rem Удаляем каталог сбора файлов rmdir /s /q "%Temp%\Vivaldi" rem Сигнал завершения =)) rundll32 user32,MessageBeep rem Открытие папки с готовым архивом explorer "%END%" endlocal exit Вопрос: Если запустить батник не на системном диске, почему то не отрабатывает команда перемещения (38 строка), хотя отработали предыдущие команды копирования, когда собирались файлы для архива. Мои действия: пробовал использовать копирование, отменял переименование в процессе перемещения, использовал свой темп (set myTemp=%Temp%). Вылечил командой "С:", разместив её строкой выше. Но понимание, так и не пришло - вопрос остался. Буду признателен и рад любой помощи. Спасибо. |
|
Отправлено: 18:07, 31-05-2019 |
Новый участник Сообщения: 8
|
Профиль | Отправить PM | Цитировать Сам отвечу на свой вопрос:
Цитата barn:
Заменил на USERPROFILE, и всё заработало, правильно будет set END=%UserProfile%\Documents |
|
Отправлено: 12:49, 02-06-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 8
|
Профиль | Отправить PM | Цитировать Финал, продолжение на форуме Vivaldi.
Код:
cls @echo off title Backup profile Vivaldi setlocal rem Принудительно "гасим" процессы браузера set "Apps=update_notifier.exe,vivaldi.exe" :stop for %%a in (%Apps%) do tasklist | findstr /irc:"^%%a" && (taskkill /f /t /im "%%a"& goto stop) rem Задаём переменные, Vivaldi - каталог юзер-профиля, vPatch - путь к exe(шнику) браузера set "Vivaldi=%LocalAppData%\Vivaldi" set "vPatch=%LocalAppData%\Vivaldi\Application\vivaldi.exe" rem Задаём переменную End, куда будет помещён архив (здесь"C:\Users\XXXXX\Documents") set "End=%UserProfile%\Documents" rem Задаём переменную UserD и создаём каталог сбора файлов (здесь системная "Temp") set "UserD=%Temp%\Vivaldi\User Data" mkdir "%UserD%\Default" rem Копируем папки (расширения, их настройки, настройки браузера) xcopy "%Vivaldi%\User Data\Default\databases" "%UserD%\Default\databases" /s /q /i /v xcopy "%Vivaldi%\User Data\Default\Extension Rules" "%UserD%\Default\Extension Rules" /s /q /i /v xcopy "%Vivaldi%\User Data\Default\Extensions" "%UserD%\Default\Extensions" /s /q /i /v xcopy "%Vivaldi%\User Data\Default\Local App settings" "%UserD%\Default\Local App settings" /s /q /i /v xcopy "%Vivaldi%\User Data\Default\Local Extension settings" "%UserD%\Default\Local Extension settings" /s /q /i /v xcopy "%Vivaldi%\User Data\Default\Local Storage" "%UserD%\Default\Local Storage" /s /q /i /v rem Копируем кастомные логотипы Экспресс-панели (задайте свой путь) xcopy "%Vivaldi%\User Data\myLogo" "%UserD%\myLogo" /s /q /i /v rem Копируем файлы (закладки, логины-пароли, настройки профиля) copy /v "%Vivaldi%\User Data\Default\file_mapping.json" "%UserD%\Default\file_mapping.json" copy /v "%Vivaldi%\User Data\Default\Bookmarks" "%UserD%\Default\Bookmarks" copy /v "%Vivaldi%\User Data\Default\Login Data" "%UserD%\Default\Login Data" copy /v "%Vivaldi%\User Data\Default\Preferences" "%UserD%\Default\Preferences" copy /v "%Vivaldi%\User Data\Default\Secure Preferences" "%UserD%\Default\Secure Preferences" rem Оптимизация (удаление *.ldb - обновляемые данные расширений, сайтов и настроек пользователя) rem erase "%UserD%\*.ldb" /f /s /q rem Копируем "First Run" (маркер - первый запуск и настройка произведены) copy /v "%Vivaldi%\User Data\First Run" "%UserD%\First Run" rem Задаём переменные для создания имени файла архива - из билда, даты и времени set "vBuild=%vPatch:\=\\%" wmic Datafile where name="%vBuild%" get Version /format:Textvaluelist >"%UserD%\First Run" <"%UserD%\First Run" (for /f "tokens=2 delims==" %%a in ('more') do set "outBuild=%%a") rem set "arcDT=%date: =0% %time: =0%" rem for /f "tokens=1-7 delims=/-:., " %%a in ("%arcDT%") do (set arcDT=%%c-%%b-%%a_%%d.%%e.%%f) for /f "delims=." %%i in ('wmic OS get LocalDateTime ^| find "."') do set osDT=%%i set "aYear=%osDT:~0,4%" set "aMonth=%osDT:~4,2%" set "aDay=%osDT:~6,2%" set "aHour=%osDT:~8,2%" set "aMin=%osDT:~10,2%" set "aSec=%osDT:~12,2%" set "arcDT=%aYear%-%aMonth%-%aDay%_%aHour%.%aMin%.%aSec%" set "arcName=Default [%outBuild%] %arcDT%" rem Определяем разрядность системы, ищем архиватор "7-Zip" или "WinRar" if %Processor_Architecture% == x86 (if not defined Processor_ArchiteW6432 goto bit32) goto bit64 :bit32 path "%ProgramFiles%\7-Zip\";"%ProgramFiles%\WinRAR\" goto cont :bit64 path "%ProgramW6432%\7-Zip\";"%ProgramFiles(x86)%\7-Zip\";"%ProgramW6432%\WinRAR\";"%ProgramFiles(x86)%\WinRAR\" :cont rem Запускаем процесс создания и перемещения архива, с переименованием в каталог юзера 7z a -t7z "%Temp%\backup.7z" "%Temp%\Vivaldi" && move "%Temp%\backup.7z" "%End%\%arcName%.7z" if errorlevel 1 (Rar a -ep1 -r "%Temp%\backup.rar" "%Temp%\Vivaldi" && move "%Temp%\backup.rar" "%End%\%arcName%.rar") ^ || (7za a -tzip "%Temp%\backup.zip" "%Temp%\Vivaldi" && move "%Temp%\backup.zip" "%End%\%arcName%.zip") path; rem Удаляем каталог сбора файлов rmdir /s /q "%Temp%\Vivaldi" endlocal rem Сигнал завершения =)) rundll32 user32,MessageBeep rem Открытие папки с готовым архивом explorer "%UserProfile%\Documents" timeout 3 exit |
Последний раз редактировалось barn, 14-06-2019 в 05:38. Причина: финал Отправлено: 17:25, 02-06-2019 | #3 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Интернет - Браузер Vivaldi | Птушвиче | Программное обеспечение Windows | 15 | 30-05-2017 16:53 | |
Представлена финальная версия браузера Vivaldi | OSZone News | Новости информационных технологий | 0 | 07-04-2016 10:30 | |
Vivaldi 1.0.162.9 | OSZone Software | Новости программного обеспечения | 0 | 13-05-2015 09:30 | |
Ограничения на размер профиля+исключение папок из профиля | Grug | Microsoft Windows NT/2000/2003 | 2 | 04-03-2009 11:09 | |
Как настройки профиля Администратор перенести на Юзер? | aishagrisha | Хочу все знать | 16 | 15-02-2009 16:45 |
|