为什么'os.system'返回代码为1?

0 投票
1 回答
7201 浏览
提问于 2025-04-21 07:12

我想从Python脚本中执行一些adb命令。但是当我执行下面这一行时

os.system('adb devices')

命令返回的是1,而不是0。我还尝试执行了

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

但是我得到的是空字符串。请帮我解决这个问题。
注意:我在命令窗口中尝试了相同的命令,结果是正常的。我还把adb.exe的路径添加到了Windows的PATH环境变量中。

1 个回答

4

根据Windows的文档,你得到了1,因为你的命令出现了错误。

也许使用subprocess会是一个更好的方法。

import subprocess

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

撰写回答