Script 1.8.1

exec

原型:

exec(cmd, timeout)

是否支持多设备:

不支持

对应的 REST API:

执行命令

描述:

在设备 shell 控制台上同步调用的方式执行命令。同步调用是指可以在较短时间内执行完毕并且不需要用户交互的命令执行方式,如 ls,pwd 等。

参数:

cmd: 需要同步调用的手机命令
timeout: 超时时间,防止命令阻塞。单位毫秒

返回值:

字符串,命令执行的输出

示例:
//示例1:
//获取当前主控设备对象
var device = Device.getMain();
//获取 ls 命令的执行结果
var ret = device.exec("ls -l /sdcard/aa/", 3000);	
print("ls 命令返回结果:\n "+ret);

//示例2:
//获取当前主控设备对象
var device = Device.getMain();
//删除目录/sdcard/aa/下的test.txt文件
var ret_rm = device.exec("rm /sdcard/aa/test.txt", 3000);	
print(ret_rm);
运行结果:
//示例 1 运行结果:
ls 命令返回结果:
 -rwxrwx--- root     sdcard_r      430 2018-07-13 14:05 test2.txt

//示例 2 运行结果:
//如果删除文件失败,就会输出错误信息,删除文件成功,就不会有返回值
//删除的test.txt文件不存在,输出如下信息:
rm: /sdcard/aa/test.txt: No such file or directory