如何在Python中将文件输出管道到变量?
我该怎么把文件的输出结果放到Python里的一个变量里呢?
这样做可以吗?比如说,把netstat
的输出结果放到一个变量x里?
3 个回答
2
看看这个 subprocess
模块。它可以让你启动新的进程,和它们进行互动,还能读取它们的输出。
特别注意一下这个部分 替换 /bin/sh 的反引号:
output = Popen(["mycmd", "myarg"], stdout=PIPE).communicate()[0]
6
这是可能的。请看:
http://docs.python.org/library/subprocess.html#replacing-bin-sh-shell-backquote
在Python 2.4及以上版本中:
from subprocess import *
x = Popen(["netstat", "-x", "-y", "-z"], stdout=PIPE).communicate()[0]
5
分成两部分:
命令行
netstat | python read_netstat.py
用Python运行 read_netstat.py 这个文件
import sys
variable = sys.stdin.read()
这样做会把 netstat 的输出结果读到一个变量里。