我需要将输出命令放入变量。
我正在尝试这个:
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。
最佳答案
output.stdout
是文件对象。您可以使用文件对象的read
方法获取输出的内容:
print(output.stdout.read())
或者您可以改用
Popen.communicate
方法:stdout, stderr = output.communicate()
print(stdout)