https:// www. centbrowser. net/zh-cn/forum.php?mod=redirect&goto=findpost&ptid=21750&pid=116682
Admin
强制结束进程,还是有小概率会导致配置文件损坏的,建议你使用账号同步多一重保险
----
在新版的设置里,新增一项是否允许开启核心配置文件本地主动防灾备份功能,每隔 xx 小时备份一次,最多保留 xx 项,备份列表,如何?xx 与备份列表是用户可选或填空项,当开启后,百分将按照设定好的值,自动运行指定批处理(backup.cmd?)或内置文件操作命令,对 User Data \ Default 等多个账户文件夹内的 Preferences 等(可自定义)核心文件,进行备份。万一用户电脑因为蓝屏等意外情况,导致 chrome 崩溃带来的 Preferences 等核心配置文件损坏,问题发生后,用户还能在 ini Backup 文件夹里,找回最近有效的备份进行手动恢复
核心配置文件,本地主动防灾备份功能,这个在所有的第三方浏览器里都很极其罕见,我觉得这个做好了后,能变成百分遇到风险情况时的保底优势,别家出问题就全部凉凉,百分出问题,我们用户还有后备手段(需提前或默认开启)兜底
----
我找了免费尝鲜野龙虾,让他自己思考,为我生成明确的 skill 并自行按照 skill 要求,制作一份示例代码,所需备份文件列表可以在 bat 里手动设置。生成的代码可能有错误,我没有实际运行过,只是提供一个老大开发参考思路
- 【批处理文件需求:CentBackup.bat】
- 适用场景:Windows第三方Chromium便携浏览器根目录(含chrome.exe、User Data文件夹)
- 核心功能:自动备份浏览器用户数据指定文件,自动清理旧备份
- 一、固定配置项
- 1. backupfiles=50:ini Backup文件夹最多保留50份时间戳备份,超出则递归删除最旧的
- 2. backupDefaults=1:1=备份User Data下所有Default/Default1/Default2...;0=仅备份Default
- 3. 备份文件列表:Preferences、History、Login Data
- 二、执行流程(严格顺序)
- 1. 校验脚本必须在chrome.exe同级目录运行,否则报错退出
- 2. 校验User Data目录存在,不存在则退出返回错误码1
- 3. 获取当前系统时间,格式化为:2026-03-28 14-48-54
- 4. 在根目录创建 ini Backup 文件夹(如已存在则跳过创建步骤),子目录为时间戳文件夹
- 5. 根据backupDefaults配置,枚举所有需要备份的Default文件夹
- 6. 将指定文件复制到对应时间戳目录,保留原目录结构
- 7. 自动清理超出数量的旧备份,仅保留最新N份
- 8. 复制成功:静默退出;复制失败:显示报错信息,按任意键后退出
- 三、输出目录结构示例
- 根目录
- ├─ ini Backup
- │ ├─ 2026-03-28 14-48-54
- │ │ ├─ Default
- │ │ │ ├─ Preferences
- │ │ │ ├─ History
- │ │ │ └─ Login Data
- │ │ └─ Default2(按需生成)
- │ └─ 2026-03-28 15-48-54
- ├─ chrome.exe
- └─ User Data
- 四、使用说明
- 将 CentBackup.bat 放在便携浏览器根目录(和 chrome.exe 同级)
- 双击运行,自动完成备份
- 备份文件保存在 ini Backup 文件夹,自动保留最新 50 份
- 复制失败会弹窗提示,成功则静默退出
复制代码- @echo off
- chcp 65001 >nul
- setlocal enabledelayedexpansion
- :: ===================== 核心配置项(可自行修改) =====================
- set "backupfiles=50" :: 最大保留备份份数,超出自动删除最旧的
- set "backupDefaults=1" :: 1=备份所有Default/Default1/Default2... 0=仅备份Default
- :: 备份文件列表(无后缀,每行一个)
- set "backupList=Preferences History Login Data"
- :: ====================================================================
- :: ===================== 路径初始化与根目录校验 =====================
- set "ExePath=%~dp0chrome.exe"
- set "RootDir=%~dp0"
- set "UserDataDir=%~dp0User Data"
- set "BackupRoot=%RootDir%ini Backup"
- :: 校验:必须在chrome.exe同级目录运行
- if not exist "%ExePath%" (
- echo 错误:脚本未放置在 chrome.exe 同级根目录!
- pause >nul
- exit /b 1
- )
- :: 校验:用户数据目录不存在,退出并返回错误码1
- if not exist "%UserDataDir%" (
- exit /b 1
- )
- :: ===================== 生成当前时间戳(格式:2026-03-28 14-48-54) =====================
- for /f "tokens=2 delims==" %%a in ('wmic os get LocalDateTime /value') do set "dt=%%a"
- set "timeStamp=%dt:~0,4%-%dt:~4,2%-%dt:~6,2% %dt:~8,2%-%dt:~10,2%-%dt:~12,2%"
- set "CurrentBackupDir=%BackupRoot%\%timeStamp%"
- :: ===================== 创建备份目录 =====================
- if not exist "%BackupRoot%" mkdir "%BackupRoot%"
- mkdir "%CurrentBackupDir%"
- :: ===================== 枚举需要备份的 Default 文件夹 =====================
- set "defaultFolders="
- if %backupDefaults% equ 1 (
- :: 备份所有 Default 开头的文件夹
- for /d %%d in ("%UserDataDir%\Default*") do (
- set "defaultFolders=!defaultFolders! %%~nxd"
- )
- ) else (
- :: 仅备份默认 Default 文件夹
- set "defaultFolders=Default"
- )
- :: ===================== 执行文件复制备份 =====================
- set "copyError=0"
- for %%f in (%defaultFolders%) do (
- set "srcDir=%UserDataDir%\%%f"
- set "destDir=%CurrentBackupDir%\%%f"
- if exist "!srcDir!" (
- mkdir "!destDir!" 2>nul
- :: 循环复制备份列表中的文件
- for %%i in (%backupList%) do (
- if exist "!srcDir!\%%i" (
- copy "!srcDir!\%%i" "!destDir!\%%i" /y >nul 2>&1
- if errorlevel 1 set "copyError=1"
- )
- )
- )
- )
- :: ===================== 清理旧备份(保留最新 N 份) =====================
- for /f "skip=%backupfiles% delims=" %%d in ('dir "%BackupRoot%" /ad /b /o-n') do (
- rd /s /q "%BackupRoot%\%%d" 2>nul
- )
- :: ===================== 复制结果校验 =====================
- if %copyError% equ 1 (
- echo ==============================================
- echo 备份失败!部分文件复制出错,请检查权限/目录
- echo ==============================================
- pause
- exit /b 1
- )
- :: 备份成功,静默退出
- endlocal
- exit /b 0
复制代码 |