You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Windows批处理中自动在索尼设备SD卡创建版本记录Txt文件

问题:将创建版本记录Txt的操作集成到安卓配置批处理中

我正在实现向安卓手机自动创建并写入Txt文件的功能。现有Windows批处理可自动配置索尼设备,运行正常,但需要在设备SD卡中创建一个Txt文件,记录脚本版本及设备配置日期。

当前操作流程:设备开启开发者模式、USB调试后,双击批处理即可执行,部分操作命令如下:

shell input tap 0358 1108 #all apps
shell input tap 0610 0802 #settings
shell input tap 0343 0427 #wifi
shell input tap 0674 0101 #3 dots
shell input tap 0437 0290 #advanced
shell input tap 0630 0252 #network notification off 
shell input keyevent 4 #back
shell input keyevent 4 #exit
shell input tap 0350 0552 #bluetooth
shell input tap 0635 0212 #on
shell input keyevent 4 #exit
shell input tap 0357 0871 #more
shell input tap 0340 0410 #android beam
shell input tap 0648 0198 #off .........

已通过手动CMD执行以下命令成功在SD卡生成目标文件:

adb shell 
shell@F3311:/ $ echo "#Sony_Script 	#Version 1.0 

 		#08/11/2022" > /sdcard/Android/data/ScriptVersion.txt

现有批处理文件内容如下:

setlocal ENABLEDELAYEDEXPANSION
@echo off

REM adb command to grab all connected devices

adb devices > adb.txt
findstr /v "List of devices attached" adb.txt > clean.txt

for /f "tokens=*" %%a in (Version.txt) do (
    for /f "tokens=1" %%b in (clean.txt) do (
        echo adb -s %%b %%a
        start adb -s %%b %%a
    )

    TIMEOUT /T 4
)

解决方案

要把创建版本记录文件的操作集成到批处理中,无需进入交互式adb shell,直接构造单行adb命令即可实现,具体步骤如下:

1. 构造单行写入命令

将echo和重定向命令作为参数传给adb shell,写成一行命令,同时用系统变量自动获取当前日期:

adb -s %%b shell "echo '#Sony_Script\t#Version 1.0\n\n\t#%date%' > /sdcard/Android/data/ScriptVersion.txt"
  • %date%:自动获取当前系统日期,替代手动输入的固定日期
  • \t:对应制表符,\n:对应换行符,保证文件格式和手动执行的一致

2. 集成到现有批处理

可以在配置命令执行完成后,单独添加一个循环为所有连接设备创建记录文件,修改后的完整批处理如下:

setlocal ENABLEDELAYEDEXPANSION
@echo off

REM 获取所有连接的设备列表
adb devices > adb.txt
findstr /v "List of devices attached" adb.txt > clean.txt

REM 执行设备配置命令
for /f "tokens=*" %%a in (Version.txt) do (
    for /f "tokens=1" %%b in (clean.txt) do (
        echo 执行配置命令:adb -s %%b %%a
        start adb -s %%b %%a
    )
    TIMEOUT /T 4
)

REM 为每个设备创建版本记录文件
for /f "tokens=1" %%b in (clean.txt) do (
    echo 为设备 %%b 创建版本记录文件
    adb -s %%b shell "echo '#Sony_Script\t#Version 1.0\n\n\t#%date%' > /sdcard/Android/data/ScriptVersion.txt"
    REM 可选:验证文件内容(可注释掉)
    echo 验证文件内容:
    adb -s %%b shell "cat /sdcard/Android/data/ScriptVersion.txt"
)

REM 清理临时文件
del adb.txt clean.txt

3. 注意事项

  • 权限问题:如果设备提示无法写入/sdcard/Android/data/目录,可将路径改为/sdcard/Download/ScriptVersion.txt这类权限更开放的目录
  • 日期格式自定义:若%date%的默认格式不符合需求,可通过for /f命令解析日期组件重新拼接(比如提取年/月/日重新组合为YYYY-MM-DD格式)
  • 避免用start命令:写入文件是一次性命令,直接执行即可保证命令完成,无需用start后台启动

内容的提问来源于stack exchange,提问作者sakii

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 03:16:24