1

将文件推送到设备时,我试图获得进度。当我在 cmd 中“设置 ADB_TRACE=adb”时它起作用(在此页面中找到)

然后我想在 python 2.7 中使用它。

cmd = "adb push file /mnt/sdcard/file"
os.putenv('ADB_TRACE', 'adb')
os.popen(cmd)
print cmd.read()

它什么也没显示。我怎样才能得到这些细节?

操作系统:win7

4

1 回答 1

1

os.popen已弃用:

2.6 版后已弃用:此功能已过时。使用 subprocess模块。subprocess尤其要检查用模块部分替换旧功能。

改用subprocess

import subprocess as sp

cmd = ["adb","push","file","/mnt/sdcard/file"]
mysp = sp.popen(cmd, env={'ADB_TRACE':'adb'}, stdout=sp.PIPE, stderr=sp.PIPE)
stdout,stderr = mysp.communicate()

if mysp.returncode != 0:
    print stderr
else:
    print stdout
于 2013-02-08T18:44:10.460 回答