❶ bat执行adb命令后怎么获取执行结果
http://mzywqwq.blog.163.com/blog/static/958701220134842449172/
参考:http://..com/question/496847483.html
普通情况,可以直接用 ”adb shell rm /data/tmp/xx.sh“ 之类的命令执行一条指令。
需要root权限情况,如果执行adb shell su的话,会进入控制台但是无法输入,用批处理的话也会卡在此处。
可以用输入重定向的方法来解决。
1.将所有需要执行的命令放到一个文本文档中,如cmd.txt
2.用输入重定向的方法: adb shell < cmd.txt
这样就可以完全执行文本文档中的命令了。
❷ 用cmd 怎样启动adb(具体步骤)
1、点击电脑的左下角的电脑图标,然后运行点击开始图标,以已经设置为了环境变量为例子,没有设置择不适用这个方法;
❸ bat脚本--android adb一键截图
分享一个本人工作中一直在用的脚本。
做android的测试常常需要截取图片,用来提单等;
本工具可以使用adb命令将图片拉取到pc端,并以时间戳的格式保存起来。
使用本工具有几个前提:
❹ 懂adb命令或者bat命令的进。30分送上
ECHO.
REM 从/dev/zero 写到 /proc/driver/mtd_writeable
adb shell "dd if=/dev/zero of=/proc/driver/mtd_writeable bs=3c count=1"
REM 从/cache/uboot.bin 写到 /dev/block/mmcblk0,从34865152开始
adb shell "dd if=/cache/uboot.bin of=/dev/block/mmcblk0 bs=1 seek=34865152"
adb shell "dd if=/cache/reco.img of=/dev/block/mmcblk0 bs=1 seek=41549824"
adb shell "dd if=/cache/boot.img of=/dev/block/mmcblk0 bs=1 seek=35258368"
echo.
echo. 刷写完成!
REM 将logo_new.bin 传到手机/mnt/sdcard2/logo.bin
adb push logo_new.bin /mnt/sdcard2/logo.bin
REM 从/dev/zero 写到 /proc/driver/mtd_writeable
adb shell su -c "/system/bin/dd if=/dev/zero of=/proc/driver/mtd_writeable bs=3c count=1" >nul 2>nul
echo.
echo 正在刷写首屏文件 ...
echo.
REM 从/mnt/sdcard2/logo.bin 写到 /dev/block/mmcblk0,seek是定位
adb shell su -c "/system/bin/dd if=/mnt/sdcard2/logo.bin of=/dev/block/mmcblk0 bs=1 seek=54657024"
echo.
REM 删除电脑上的logo_new.bin文件
del logo_new.bin
REM 删除手机中的文件/mnt/sdcard2/logo.bin
adb shell su -c "/system/bin/rm /mnt/sdcard2/logo.bin"
echo. 刷写完成!
❺ 求问 BAT脚本如何自动执行 adb shell 以后的命令
这是无法实现的。你无法在bat脚本中运行交互式shell命令,你的命令无法发送进入。
bat脚本运行时,是在CMD的环境下运行,它的命令解释器是cmd。
而su在shell环境下执行的,它的命令解释器是shell下的"/system/bin/sh"。
su是一条交互式的shell命令,它需要与shell环境下的用户进行交互操作。
问题就在这里了,
bat脚本只负责将"shell su"作为参数传递执行一次adb.exe。
这个动作完成,这条命令的步骤就算结束了,
但此时su还有一个切换用户身份的动作,如果有密码还会通过shell请求用户输入密码,
但运行bat的cmd环境是它收不到这个请求的。
解决办法:
一. 将su命令之后需要执行的命令写成一个sh脚本。
通过adb将sh脚本推入手机中,并为脚本添加可执行权限
在bat中添加一条比方说这样的命令
adb shell ". /path/to/your/file.sh"
二. 安装superSU授权管理器
安装superSU授权管理器后执行
adb root
授权,允许adb以root身份运行。
这之后你通过adb 发送的shell命令会以root身份执行。
❻ 批处理文件-bat的妙用
我们在测试过程中如果遇到APP程序出现奔溃的时候,那么就需要打印drop日志。
如果出现问题的时候还需要截图,那么还需要手动拍照
如果出现问题需要录制视频,那么还需要手动录像
等等
这些操作如果只需要一个鼠标点击的操作就能实现的话,那么很多人会喜欢上这个工作。
接下来,简单介绍几个bat文件的用处:
1、打印drop日志
adb shell mpsys dropbox --print >>1.txt
把这个指令复制到txt文档,然后修改后缀为bat即可;这样只要双击这个批处理文件,即可导出drop日志
2、截图;如果出现问题之后,我们可以双击这个批处理文件,即可截图(并且带有时间后缀)
set yy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
set hh=%time:~0,2%
set mn=%time:~3,2%
set ss=%time:~6,2%
set filename=%yy%%mm%%dd%%hh%%mn%%ss%
adb shell /system/bin/screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png C:
ren C:screen.png "%filename%.png"
把该脚本复制到txt文档,修改后缀为bat即可
3、针对录像的批处理操作,后期详细介绍
❼ 如何编写一个.bat文件,每5分钟循环执行一次adb devices命令
@echo off
:Loop
adb devices
timeout /t 300 /nobreak >nul 2>nul
goto Loop
这个不适合XP系统使用。
❽ 在bat文件中写一个5秒执行一次的循环语句。用来执行adb语句。
:chongfu
这里写你的adb命令
ping127.0.1-n"5">nul
gotochongfu
❾ 做一个命令行,里面有adb命令,一点就自动执行的,怎么弄
新建一个test.bat文件,点击鼠标右键,编辑,写一条adb命令,保存。再双击这个文件就会自动执行这条命令了
❿ adb shell命令在bat文件里怎么继续执行下一条命令啊
在批处理中通过adb来使用shell命令,
实际上是将需要执行的命令作为了"adb.exe"执行"shell"这个选项时的参数传递进去的,
要正确将整条命令完整的作为参数传递就对格式有严格的要求。
首先,执行dd命令需要root权限,那么需要切换用户身份,需要执行su命令。
然后才有权限进行dd操作。而不带选项参数的su命令是交互式的,所以应该使用su -c 选项,
正确的写法如下:
adb shell "su -c dd if='/sdcard/p1' of='/dev/block/mmcblk0p1'"
注意引号的使用。