Python调用adb命令实现对多台设备同时进行reboot的方法


Posted in Python onOctober 15, 2018

首先,adb实现对设备的reboot命令是:adb reboot . 但是如果是两台/多台设备的时候,需要声明serial number: adb -s serial_no reboot.

那么,如何用python实现对多台设备进行adb操作呢(reboot)?

这里涉及到 python 下 subprocess model的使用:

import subprocess

adb device 获取所有设备的 serial number:

devices = subprocess.Popen(
 'adb devices'.split(),
 stdout=subprocess.PIPE,
 stderr=subprocess.PIPE
).communicate()[0]

这样adb device命令的返回信息都在devices下,但是我们只需要 serial number的:

serial_nos = []
for item in devices.split():
 filters = ['list', 'of', 'device', 'devices', 'attached']
 if item.lower() not in filters:
  serial_nos.append(item)

这样serial_nos 下保存的就是所有设备的 serial number 了,下面我们只需要依次对其进行adb -s [serial_number] reboot即可:

for serial_no in serial_nos:
 reboot_cmds.append('adb -s %s reboot' % serial_no)
for reboot_cmd in reboot_cmds:
 subprocess.Popen(
  reboot_cmd.split(),
  stdout=subprocess.PIPE,
  stderr=subprocess.PIPE
 ).communicate()[0]

这样,每个设备都进行了reboot的操作了……

以上这篇Python调用adb命令实现对多台设备同时进行reboot的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编程中字符串和列表的基本知识讲解
Oct 14 Python
使用pyecharts无法import Bar的解决方案
Apr 23 Python
Python基于回溯法子集树模板实现8皇后问题
Sep 01 Python
python 遍历列表提取下标和值的实例
Dec 25 Python
Python3.0 实现决策树算法的流程
Aug 08 Python
python实现批量修改服务器密码的方法
Aug 13 Python
Python实现快速排序的方法详解
Oct 25 Python
pygame实现烟雨蒙蒙下彩虹雨
Nov 11 Python
Python unittest工作原理和使用过程解析
Feb 24 Python
Python Websocket服务端通信的使用示例
Feb 25 Python
Python基于traceback模块获取异常信息
Jul 23 Python
Python 实现键盘鼠标按键模拟
Nov 18 Python
彻彻底底地理解Python中的编码问题
Oct 15 #Python
widows下安装pycurl并利用pycurl请求https地址的方法
Oct 15 #Python
解决python3 安装完Pycurl在import pycurl时报错的问题
Oct 15 #Python
Python安装pycurl失败的解决方法
Oct 15 #Python
django框架之cookie/session的使用示例(小结)
Oct 15 #Python
Python访问MongoDB,并且转换成Dataframe的方法
Oct 15 #Python
Django框架的中的setting.py文件说明详解
Oct 15 #Python
You might like
PHP日期处理函数 整型日期格式
2011/01/12 PHP
用PHP编写和读取XML的几种方式
2013/01/12 PHP
php实现的三个常用加密解密功能函数示例
2017/11/06 PHP
phpQuery采集网页实现代码实例
2020/04/02 PHP
Javascript 文件夹选择框的两种解决方案
2009/07/01 Javascript
仅Firefox中链接A无法实现模拟点击以触发其默认行为
2011/07/31 Javascript
Javascript 检测键盘按键信息及键码值对应介绍
2013/01/03 Javascript
js动态创建表格,删除行列的小例子
2013/07/20 Javascript
jquery改变disabled的boolean状态的三种方法
2013/12/13 Javascript
自己实现ajax封装示例分享
2014/04/01 Javascript
js倒计时简单实现方法
2015/12/17 Javascript
超链接怎么正确调用javascript函数
2016/05/23 Javascript
JavaScript鼠标事件,点击鼠标右键,弹出div的简单实例
2016/08/03 Javascript
jquery点击展示与隐藏更多内容
2016/12/03 Javascript
TableSort.js表格排序插件使用方法详解
2017/02/10 Javascript
vue中用动态组件实现选项卡切换效果
2017/03/25 Javascript
jQuery使用ajax_动力节点Java学院整理
2017/07/05 jQuery
JavaScript门道之标准库
2018/05/26 Javascript
详解jQuery中的easyui
2018/09/02 jQuery
vue实现的组件兄弟间通信功能示例
2018/12/04 Javascript
vue项目打包之开发环境和部署环境的实现
2020/04/23 Javascript
vue制作toast组件npm包示例代码
2020/10/29 Javascript
详解JavaScript执行模型
2020/11/16 Javascript
[03:59]DOTA2英雄梦之声_第07期_水晶室女
2014/06/23 DOTA
[51:50]完美世界DOTA2联赛 Magma vs GXR 第一场 11.07
2020/11/10 DOTA
Python实现的二维码生成小软件
2014/07/11 Python
python字符串的常用操作方法小结
2016/05/21 Python
Python使用pickle模块储存对象操作示例
2018/08/15 Python
tensorboard显示空白的解决
2020/02/15 Python
关于tensorflow softmax函数用法解析
2020/06/30 Python
python中doctest库实例用法
2020/12/31 Python
应届毕业生如何写求职信
2014/02/16 职场文书
毕业生如何写自我鉴定
2014/03/15 职场文书
2014年创先争优活动总结
2014/05/04 职场文书
篝火晚会策划方案
2014/05/16 职场文书
房屋登记授权委托书范本
2014/10/09 职场文书