1

我需要将输出命令放到一个变量中。我正在尝试这个:

import os
import subprocess

output = subprocess.Popen(["ls", "-l"], stdout=subprocess.PIPE)
print (output.stdout)

output.terminate()

但我明白了

'open file '<fdopen>', mode 'rb' at 0xb76db5a0>'

问题是什么 ?没关系 ?

我使用 python 2.6.6。

4

1 回答 1

0

output.stdout是一个文件对象。您可以使用read文件对象的方法来获取输出的内容:

print(output.stdout.read())

或者您可以改用该Popen.communicate方法:

stdout, stderr = output.communicate()
print(stdout)
于 2018-09-20T15:58:44.243 回答