bat 批处理 卸载三方APK
2016-12-07 21:55
381 查看
我用到的一些bat 命令以作备忘
//实现的功能是:分别输出不同的文件(规律)
一:输出日志
rem 为批处理中的注释
for /l /f /r /d 分别对应着不同的含义来完成不同的操作
可以看一下for的介绍
二:为了解决空间不足的问题需要把我认为设备上无关的App卸载掉
这里介绍一下:token意思是取第几个分割数据 1-3 的意思是:
分割1 分割2 分割3 分割4(只取1-3的数据)
delims 意思是根据什么进行分割(默认为空格):相当于java的split函数
bat的截取和替换的方式是:%VAR:~0,n%和%VAR:=0,n%
如上使用了截取来判断两个字符串是否相同
同时注意,如果你要改变局部变量的值:请加setlocal enabledelayedexpansion这一句并且相应的地方需要使用!VAR!来显示调用。
2016年12月30日18:21:34
三:功能:代码删除指定包名的进程
又一次使用bat脚本但是又遇到问题,并成功解决,特此感谢赵三元的指教
脚本代码如下
原因分析如下:
1.set复制不予许有空格否则失败:set a=bbb(对) set a = bbb (错,含有空格)
2.
输出的结果结尾是\r\n,所以导致一开始adb shell kill !c!有问题
其中ODOA表示换行符Windows平台的换行符是CR+LF. 十六进制的ASCII值为0D0A.
0a——换行符号------”\n”
0d——回车符号------”\r”
四:使设备本身支持awk等命令
教程:使设备支持全linux命令
使用时,把注释去掉
五:call和start和goto区别
在同事的bat脚本中发现了自己还有不懂的脚本语句,特为添加
goto 表示不执行goto之后的代码直接调用标签所在处的代码
call 表示执行标签所在处的代码之后回到call之后的代码
start 表示启动一个单独的窗口运行指定的程序或命令(不可以跳转到标签处执行)
(1) 运行 GOTO :EOF 后, CMD 返回并将等待下一条命令.
(2) 运行 EXIT 后, CMD 将直接关闭并返回到曾启动 cmd.exe 的程序或返回到”资源管理器”.
(3) 运行 EXIT /B 后, CMD 将直接关闭并返回到曾启动 cmd.exe 的程序或返回到”资源管理器”.
六:echo的使用
@echo off
1.echo前面加@与否。 作用:加@代表不显示当前行命令自身;否则反之。
2.echo.与echo本身之间没有区别
3.echo &pause 表示echo 执行之后的命令或程序,而非打印
DOS在运行批处理时,
会依次执行批处理中的每条命令,
并且会在显示器上显示,
如果你不想让它们显示,
可以加一个“echo off”
七:从bat脚本中获取用户输入的内容
//实现的功能是:分别输出不同的文件(规律)
一:输出日志
adb pull /sdcard/txz/log/text_all D:/log rem for /l %%i in (1,1,10) do adb pull /sdcard/txz/log/text_all_%%i D:/log pause
rem 为批处理中的注释
for /l /f /r /d 分别对应着不同的含义来完成不同的操作
可以看一下for的介绍
二:为了解决空间不足的问题需要把我认为设备上无关的App卸载掉
setlocal enabledelayedexpansion rem 设置是否需要更新变量值 for /f "tokens=1-3 delims=:" %%a in ('adb shell pm list package -3') do ( set dd=%%b set "dd=!dd:~0,10!" echo !dd! rem set PARAM=%%b rem set "PARAM=!PARAM:~0,10!" rem 注意这里为!!和这里是:~ rem echo 输出!PARAM! rem 调用另一个文件 因为adb uninstall %%b 不可以执行,具体原因未知(还望高手赐教) if not "!dd!" =="com.txznet" call uninstallAll.bat %%b //if not "!dd!" =="com.txznet" call adb uninstall %%b 表示这么写又可以了 ) uninstallAll.bat echo %1 adb uninstall %1 if errorlevel 0 echo 卸载成功
这里介绍一下:token意思是取第几个分割数据 1-3 的意思是:
分割1 分割2 分割3 分割4(只取1-3的数据)
delims 意思是根据什么进行分割(默认为空格):相当于java的split函数
bat的截取和替换的方式是:%VAR:~0,n%和%VAR:=0,n%
如上使用了截取来判断两个字符串是否相同
同时注意,如果你要改变局部变量的值:请加setlocal enabledelayedexpansion这一句并且相应的地方需要使用!VAR!来显示调用。
2016年12月30日18:21:34
三:功能:代码删除指定包名的进程
又一次使用bat脚本但是又遇到问题,并成功解决,特此感谢赵三元的指教
脚本代码如下
setlocal enabledelayedexpansion rem 设置是否需要更新变量值 for /f %%a in ('adb shell "ps|grep com.txznet.music|awk '{print $2}'"') do (set str=%%a set c=!str:~0,5! echo !c! adb shell kill !c! ) adb shell "ps|grep com.txznet.music|awk '{print $2}'" pause
原因分析如下:
1.set复制不予许有空格否则失败:set a=bbb(对) set a = bbb (错,含有空格)
2.
adb shell "ps|grep com.txznet.music|awk '{print $2}'"
输出的结果结尾是\r\n,所以导致一开始adb shell kill !c!有问题
其中ODOA表示换行符Windows平台的换行符是CR+LF. 十六进制的ASCII值为0D0A.
0a——换行符号------”\n”
0d——回车符号------”\r”
四:使设备本身支持awk等命令
教程:使设备支持全linux命令
rem adb push busybox /system/xbin/ rem adb root rem adb remount rem adb shell "chmod 755 /system/xbin/busybox" rem adb shell "/system/xbin/busybox --install ." rem adb shell "awk" rem adb shell "ps |grep com.txznet.music|awk '{print $2}' | head -n 1"
使用时,把注释去掉
五:call和start和goto区别
在同事的bat脚本中发现了自己还有不懂的脚本语句,特为添加
call:strstr "%%a" "Is a directory" 14 :strstr rem 和C语言里面的标签类似的效果 set str1=%~1 set str2=%~2 goto:eof rem 表示调用方法结束
goto 表示不执行goto之后的代码直接调用标签所在处的代码
call 表示执行标签所在处的代码之后回到call之后的代码
start 表示启动一个单独的窗口运行指定的程序或命令(不可以跳转到标签处执行)
(1) 运行 GOTO :EOF 后, CMD 返回并将等待下一条命令.
(2) 运行 EXIT 后, CMD 将直接关闭并返回到曾启动 cmd.exe 的程序或返回到”资源管理器”.
(3) 运行 EXIT /B 后, CMD 将直接关闭并返回到曾启动 cmd.exe 的程序或返回到”资源管理器”.
六:echo的使用
@echo off
1.echo前面加@与否。 作用:加@代表不显示当前行命令自身;否则反之。
2.echo.与echo本身之间没有区别
3.echo &pause 表示echo 执行之后的命令或程序,而非打印
DOS在运行批处理时,
会依次执行批处理中的每条命令,
并且会在显示器上显示,
如果你不想让它们显示,
可以加一个“echo off”
七:从bat脚本中获取用户输入的内容
rem /P 命令行开关允许将变量数值设成用户输入的一行输入 set /p var= rem /A 命令行开关指定等号右边的字符串为被评估的数字表达式 set /a num+=1 rem 赋值语句的变量与=之间不允许有空格,否则不会赋值上去 set "赋值语句" set 赋值语句
相关文章推荐
- 内置三方apk到Rom可移动/可卸载
- Android系统之路(初识MTK) ------ 内置三方apk到Rom可移动/可卸载
- BAT(批处理脚本)实现文件的安装和卸载(二)
- 安装和卸载指定apk的批处理文件
- BAT(批处理脚本)实现文件的安装和卸载(一)
- 清除显卡右键菜单批处理.bat
- bat 批处理命令 文件 类型 语法 格式 应用 详解
- windows下bat批处理文件语法 2015-07-27 11:25 8人阅读 评论(0) 收藏
- bat 批处理判断服务和进程
- tomcat启动批处理——catalina.bat
- 如何建立批处理文件(.bat或.cmd)
- bat批处理文件建立和打开
- 使用批处理文件(*.bat)同时打多个cmd窗口
- Bat 批处理 获取当前日期时间
- 如何卸载自己手机上的APK文件程序
- bat批处理文件
- 在Android手机或模拟器上安装和卸载APK包
- Android-如何预置APK使得用户可以卸载,并且恢复出厂设置时能够恢复?
- BAT批处理文件语法(二)
- apk卸载不干净,导致安装、升级不成功问题的解决办法