非游戏根目录存档位置相关。
一般会在 C:\Users\【用户名】\AppData
但是系统可能不在C盘,用户名也是各式各样。所以可以使用
%HOMEDRIVE%%HOMEPATH%\AppData
代替。在文件资源管理器 路径中直接复制进去就是
剩下 根据游戏不同,可能在 Local LocalLow Roaming 中。可以直接往上加。例如
%HOMEDRIVE%%HOMEPATH%\AppData\LocalLow
当然可以进一步使用系统变量。
C:\Users\【用户名】\AppData\Local = %LocalAppData%
C:\Users\【用户名】\AppData\Roaming = %AppData%
C:\Users\【用户名】\AppData\LocalLow = %USERPROFILE%\AppData\LocalLow
当然的当然,可以再进一步写点bat脚本,实现双击就打开对应文件夹位置。
@echo off
rem "设置文件编码UTF-8 不然输出中文会乱码"
chcp 65001 >nul
explorer "%USERPROFILE%\AppData\LocalLow"
exit
新建一个文本文档,复制黏贴,修改,保存,修改后缀为bat。
简答说明一下, @echo off 固定的开头用于关闭代码回显。
REM 注释命令
explorer "%USERPROFILE%\AppData\LocalLow" 开启一个新窗口
当然的当然的当然,可以再再进一步,直接尝试打开游戏存档位置。
假设游戏存档位置在,%LocalAppData%\游戏文件夹\游戏子文件夹 这里可以多层文件夹
@echo off
chcp 65001 >nul
set "target_dir=%LocalAppData%\游戏文件夹\游戏子文件夹"
REM 直接创建目录(自动处理多级目录和已存在的情况)
mkdir "%target_dir%" >nul 2>&1
REM 打开目标文件夹
explorer "%target_dir%"
exit
其中mkdir 会尝试创建对应文件夹,如果已经存在也不影响。
实际上,还可以再再再进一步,实现自动复制存档过去。但是,懒得继续了。
实战
好的,那么在不增加自动复制功能的前提下,我们来个实战练习,然后往里面加一点点细节。
比如 稿子 S4730 【但是因为游戏打包的比本文早,并没有合并进去】
游戏存档位置是 C:\Users\【用户名】\AppData\Local\Aurelia
于是我们可以将其视为 %LocalAppData%\Aurelia
以下为详细代码以及注释说明
@echo off
chcp 65001 >nul
set "target_dir=%LocalAppData%\Aurelia"
echo ========》 https://reimu.net/ 《========
echo 本资源是来自灵梦御所的免费资源,
echo 如果您是付费购买的,那么恭喜你被坑了
echo .
echo 这就打开存档位置
REM 直接创建目录(自动处理多级目录和已存在的情况)
mkdir "%target_dir%" >nul 2>&1
REM 打开目标文件夹
start explorer "%target_dir%"
REM 设置倒计时功能
setlocal enabledelayedexpansion
REM 生成退格符(ASCII 8)
for /f %%a in ('"prompt $H & echo on & for %%b in (1) do rem"') do set "bs=%%a"
REM 生成足够覆盖整行的退格符(50个)
set "bs_line="
for /l %%i in (1,1,50) do set "bs_line=!bs_line!!bs!"
REM 倒计时逻辑
set /a "count=5"
echo 操作完成,窗口将在5秒后关闭...
:countdown
<nul set /p "=!bs_line!剩余时间: !count! 秒"
timeout /t 1 /nobreak >nul
set /a "count-=1"
if !count! gtr 0 goto countdown
REM 最终关闭提示
<nul set /p "=!bs_line!窗口即将关闭..."
timeout /t 1 >nul
exit