python 执行shell-多行命令-su

第一种方式 不能拿到输出值

import os

system = os.system("adb shell su -c 'cd data/data/com.xxx.xxx/xxx ; ls'")
复制代码

su 表示拿到管理员权限python

第二种方式 能拿到输出值

result = os.popen("adb shell su -c 'cd data/data/com.xxx.xxx/xxx ; ls'")
res = result.read()
for line in res.splitlines():
    print(line)
复制代码

另外的,这个也能够用,可是不知道怎么拿到su权限

import subprocess

# 这个也能够用,可是不知道怎么拿到su权限
p1 = subprocess.Popen('adb shell cd data&&cd data&&ls |grep com', stdout=subprocess.PIPE,
                      stderr=subprocess.PIPE )
print(p1.stdout.read())
复制代码

参考了 python获取命令行输出结果shell

python执行Linux命令,连续执行多条Linux命令 ,os.system和os.popenbash

相关文章
相关标签/搜索