Balatro游戏存档备份和还原脚本
Balatro游戏存档位置
游戏存档位于 C:\Users\你自己的登录账号名\AppData\Roaming\Balatro
其中AppData是隐藏文件夹,需要在 查看
中勾选显示隐藏项目
,来显示隐藏文件夹。
备份还原脚本
备份脚本
@echo off
setlocal
REM 设置游戏存档路径
set "source_folder=C:\Users\fun\AppData\Roaming\Balatro"
REM 设置备份文件存放路径
set "backup_base_folder=C:\Users\fun\Desktop\scripts\backup"
REM 获取当前日期和时间
for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /value') do set "datetime=%%I"
REM 解析出年月日时分秒数值到对应变量
set "year=%datetime:~0,4%"
set "month=%datetime:~4,2%"
set "day=%datetime:~6,2%"
set "hour=%datetime:~8,2%"
set "minute=%datetime:~10,2%"
set "second=%datetime:~12,2%"
REM 年月日时分秒拼接成为最终的文件夹名称
set "time_name=%year%%month%%day%_%hour%%minute%%second%"
REM 确保备份文件夹存在,如果不存在则创建,以下内容暂时不需要 xcopy会自动创建backup文件夹
REM if not exist "%backup_base_folder%" (
REM mkdir "%backup_base_folder%"
REM )
REM 复制文件夹到备份文件夹中并重命名
xcopy /s /e /i "%source_folder%" "%backup_base_folder%\%time_name%"
echo Backup completed.
echo from "%source_folder%" to "%backup_base_folder%\%time_name%"
REM 延迟关闭控制台窗口
timeout /t 5 >nul
:end
读档脚本
@echo off
setlocal enabledelayedexpansion
REM 设置游戏存档文件夹
set "source_folder=C:\Users\fun\AppData\Roaming\Balatro"
REM 设置备份文件夹
set "backup_base_folder=C:\Users\fun\Desktop\scripts\backup"
REM 切换到backup文件夹路径
pushd "%backup_base_folder%"
REM 初始化变量以存储最新文件夹的名称和时间
set "latest_folder="
set "latest_datetime=0"
REM 获取所有带有年月日_时分秒格式的文件夹
for /f "delims=" %%a in ('dir /b /ad *_??????') do (
REM 提取文件夹名称中的日期时间部分
set "folder_datetime=%%a"
set "folder_datetime=!folder_datetime:~0,15!"
REM 比较文件夹名称中的日期时间,更新最新文件夹的信息
if "!folder_datetime!" gtr "!latest_datetime!" (
set "latest_folder=%%a"
set "latest_datetime=!folder_datetime!"
)
)
REM 判断是否找到符合条件的文件夹
if not defined latest_folder (
echo No matching folder found.
exit /b
)
echo latest folder: %latest_folder%
REM 删除游戏存档
if exist "%source_folder%" rmdir /s /q "%source_folder%"
REM 复制最新的备份存档到游戏存档路径上
xcopy /s /e /i "%backup_base_folder%\%latest_folder%" "%source_folder%"
echo Recover success.
echo from "%backup_base_folder%\%latest_folder%" to "%source_folder%"
REM 延迟关闭控制台窗口
timeout /t 5 >nul
:end
清理脚本
@echo off
setlocal enabledelayedexpansion
REM 设置backup文件夹路径
set "backup_base_folder=C:\Users\fun\Desktop\scripts\backup"
REM 设置要保留的备份文件夹数量
set "keep_count=5"
REM 切换到备份文件夹路径
pushd "%backup_base_folder%"
for /f "tokens=*" %%a in ('dir /b /ad /o-n') do (
set "folder=%%a"
set /a count+=1
if !count! gtr %keep_count% (
echo Deleting old folder: !folder!
rd /s /q "!folder!"
)
)
echo Cleanup completed.
REM 延迟关闭控制台窗口
timeout /t 5 >nul
:end