以前发在 CSDN 上, blog.csdn.net/u014443348/…
掘金氛围感觉更好一点,打算慢慢转过来。
最近碰到一个情况,就是需要在一个 Android 设备上安装很多应用,大家开发 Android 的都知道使用 adb install
来执行 Apk 的安装。
如果只安装一两个的话也没有问题,但是数量一多;或者你要连续在几个设备安装,肯定还是麻烦 … 毕竟这种机械性的行为能自动化绝对不手动,懒才是科技进步的动力哈。
自上次使用了 Shell 模拟触摸来测试小游戏之后,这次又想到了使用 Shell 来做,我们本来就是批量执行命令而已。这次还是 Mac 的系统,Linux 的操作系统应该也能执行,后面会贴出 WIndows 下的代码。
简单说下我们目标:把所有要装的 Apk 丢在一个文件夹中,然后再里面放入了一个脚本文件,执行该脚本的时候,自动搜索该目录下所有 .apk 文件并尝试安装。(此处暂时没有考虑递归搜索),因为代码量也不大,配上简单注释,简单看两眼就基本懂了。
先放一个效果图。
接下来是代码部分。
shell代码解读复制代码#!/bin/bash #adb install cmd install="adb install -r " #app file target=".apk" #enter shell folder basefolder=`dirname $0` cd $basefolder #list all file for file in $(ls) do # find fileName contain target and install it. result=$(echo $file | fgrep "${target}") if [[ "$result" != "" ]] then $install $file fi done
因为 Mac 下执行 .sh 文件可能出现权限问题,如下图。
此时在命令行中使用 chmod 777
对需要执行的 .sh 文件赋予权限,然后再执行就没有问题了。我新建 .sh 中并加了一个简单的文字输出,并赋予权限再执行,如下图。
此处贴一个 Windows 下的代码,这样大家只需要新建两个脚本文件,然后放在 app 目录中在对应平台执行对应文件就可以了。
bat代码解读复制代码@echo off for /f "delims=" %%i in ('dir /b /a-d /s .') do adb install -r %%~nxi
评论记录:
回复评论: