如何在 Python 中将参数传递给系统 shell 并将输出作为数组或字符串返回?
问问题
1706 次
1 回答
4
os.system
不是为此而设计的;os.popen
是。两者都已被subprocess
模块淘汰,应该用于编写新代码。要捕获 shell 命令的输出,您将实例化一个subprocess.Popen
对象并调用communicate()
以检索其输出。
除了上述之外, Python 2.7 中新增的实用函数check_output
是 shell 反引号的插件替换,即您将执行命令传递给它并以字符串形式获取输出:
>>> subprocess.check_output(['ls', '-a'])
'.\n..\n'
于 2012-11-04T09:31:03.750 回答