shell 同时运行脚本里多个互不干扰的指令
今天在搞一个需求,需要在shell里同时运行两个互不干扰的指令,主要是在脚本里要让一个apk同时在不同的设备上运行,但是如果在脚本里将命令一行一行堆砌起来的话,这样的代码是串行的,我的mentor让我将脚本改成并行的,并且在jenkins跑,jenkins里支持M/S模式,即一台主机,外加多个节点这样的配置。但不是支持多台手机并行的。所以只能在脚本上做做工作,解决方案很简单:至于要在想
·
今天在搞一个需求,需要在shell里同时运行两个互不干扰的指令,
主要是在脚本里要让一个apk同时在不同的设备上运行,但是如果在脚本里将命令一行一行堆砌起来的话,这样的代码是串行的,我的mentor让我将脚本改成并行的,并且在jenkins跑,jenkins里支持M/S模式,即一台主机,外加多个节点这样的配置。但不是支持多台手机并行的。
所以只能在脚本上做做工作,
解决方案很简单:至于要在想要并行的命令之间加个'$'符号
如下:
以前的命令片段:
adb -s bff1bca4 shell am instrument -e class com.dianping.nova.testall.TestAll -w com.alipay.android.app.test/com.dianping.instrumentationTestRunner.InstrumentationTestRunner
adb -s 040ABG8KF8WE shell am instrument -e class com.dianping.nova.testall.TestAll -w com.alipay.android.app.test/com.dianping.instrumentationTestRunner.InstrumentationTestRunner
此时在jenkins里是串行的
改造之后的命令 :
adb -s bff1bca4 shell am instrument -e class com.dianping.nova.testall.TestAll -w com.alipay.android.app.test/com.dianping.instrumentationTestRunner.InstrumentationTestRunner&adb -s 040ABG8KF8WE shell am instrument -e class com.dianping.nova.testall.TestAll -w com.alipay.android.app.test/com.dianping.instrumentationTestRunner.InstrumentationTestRunner
注意两个命令要放在同一行
这样在shell下活jenkins下就是并行执行的了
更多推荐
已为社区贡献1条内容
所有评论(0)