我试图创建bash脚本安装分裂apk手动与adb shell这需要使用下面的命令获得会话id
命令
SESSION='pm install-create -S 42211368'
将输出如下:Success: created install session [547376362]
547376362将是会话ID
我想传递547376362到SESSION变量
sh < pm install-write -S 24628703 ${SESSION} 0 /sdcard/YTAPKM/base.apk
因此结果应为"sh <<strong>5473763620/sdcard/YTAPKM/base.apk"
grep
是足够的。
SESSION=$(pm install-create -S 42211368 | grep -oE '[0-9]+')
sh < pm install-write -S 24628703 ${SESSION} 0 /sdcard/YTAPKM/base.apk
解释一下发生了什么:
-
grep -E
使用"extended"正则表达式(更容易使用) -
grep -o
只输出匹配的部分,本例中为整数 -
SESSION=$(some_cmd)
将some_cmd
的标准输出存储到变量SESSION
,并允许管道等