python getoutput() 在子进程中等效[重复]

2023-12-09

我想获取一些 shell 命令的输出,例如ls or df在 python 脚本中。我看到commands.getoutput('ls')已弃用,但是subprocess.call('ls')只会让我得到返回码。

我希望有一些简单的解决方案。


Use 子进程.Popen:

import subprocess
process = subprocess.Popen(['ls', '-a'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out, err = process.communicate()
print(out)

请注意,通信会阻塞,直到进程终止。你可以使用process.stdout.readline()如果您需要在终止之前输出。欲了解更多信息,请参阅文档.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python getoutput() 在子进程中等效[重复] 的相关文章

随机推荐