我希望通过Python脚本实现多次执行shell命令 15

如我在doc下输入:adbshell$su#date-s"xxxxxxxx"不知道怎么实现脚本用过popensubprocessos.system都貌似是只能执行一次... 如我在doc下输入:
adb shell
$su
#date -s "xxxxxxxx"
不知道怎么实现脚本 用过popen subprocess os.system 都貌似是只能执行一次
展开
 我来答
曹晓山11
推荐于2018-04-05 · 知道合伙人互联网行家
曹晓山11
知道合伙人互联网行家
采纳数:3033 获赞数:52066
毕业南阳理工学院计算机科学与技术专业,本科学位。互联网行业从业3年工作经验,读过编程类相关书籍多本。

向TA提问 私信TA
展开全部

python脚本实现多次循环执行shell命令有三种方法,代码如下:

#方法一 
os.system
import os
i = 0
while True:
i = i + 1
os.system("tcpreplay -ibond0 -M 5 -l 1 oracle_request_response.cap")
print"+++++++++++++++++++++++++++++++"
print"times:" ,i
time.sleep(5)

#方法二 
os.popen 
import os
i = 0
while True:
i = i + 1
print os.popen("tcpreplay -ibond0 -M 5 -l 1 oracle_request_response.cap").read()
 print"+++++++++++++++++++++++++++++++"
 print"times:" ,i
 time.sleep(60)

#方法三 
output = Popen("xxx",shell = True).communicate()[0]
import os
from subprocess import * 
i = 0
while True:
 i = i + 1
output = Popen("tcpreplay -ibond0 -M 5 -l 1 oracle/*",shell = True).communicate()[0]
 print"+++++++++++++++++++++++++++++++"
 print"times:" ,i
 time.sleep(60)
匿名用户
2012-04-23
展开全部
用循环:
import os
for i in range(3):
os.system("date");
追问
os.system会初始化运行环境 每次都是doc下运行 达不到上下环境一致啊 
adb shell是在doc下
$su是在shell下
#date -s "xxxxxxxx"是在shell下
追答
from subprocess import *
p = Popen("bash", bufsize = 0, stdin=PIPE, stdout=PIPE, stderr=PIPE)

p.stdin.write("pwd\n");
print p.stdout.readline()
p.stdin.write("cd /tmp\n");
p.stdin.write("pwd\n");
print p.stdout.readline()
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
悠游_小幽
2012-05-01
知道答主
回答量:5
采纳率:0%
帮助的人:4325
展开全部
我也遇到同样的问题,你知道该如何解决了吗
追问
不清楚 你有什么好办法吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liulanger8687
2012-04-25
知道答主
回答量:5
采纳率:0%
帮助的人:7670
展开全部
没一个靠谱的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wode5130
2012-04-23 · TA获得超过638个赞
知道小有建树答主
回答量:423
采纳率:100%
帮助的人:334万
展开全部
写一个函数,多次调用不行吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式