为什么'os.system'以返回码1退出?

时间:2014-09-12 11:17:56

标签: python windows adb

我想从python脚本执行一些adb命令。但是当我执行以下行时

os.system('adb devices')

cmd返回1而不是0.我也尝试执行

os.popen('adb devices').read()

我得到空字符串。请帮我解决这个问题。 注意:我从命令窗口尝试了相同的命令,它工作正常。我还将adb.exe的路径添加到了Windows PATH环境变量。

1 个答案:

答案 0 :(得分:3)

根据Windows docs,您已获得1,因为您的命令出错。

也许使用subprocess可能是更好的方法。

import subprocess

subprocess.check_output(
    "adb devices", 
    stderr=subprocess.STDOUT,
    shell=True)