我的要求是打印在控制台中的文件以及日志文件的输出。下面这段代码为我做了这件事,免除了小小的呃逆。我在文件末尾调用perl脚本,其输出显示在控制台中,但未打印到文件中。打印效果以及控制台
import subprocess
import sys
class Tee(object):
def __init__(self, *files):
self.files = files
def write(self, obj):
for f in self.files:
f.write(obj)
f = open('MyFile.txt', 'w')
original = sys.stdout
sys.stdout = Tee(sys.stdout, f)
print "Logging Started"
# My code
print "A"
subprocess.call(['./MyScript])
sys.stdout = original
print "Logging Stopped" # Only on stdout
f.close()
任何人都可以请告知如何才能实现?或者有可能完全相同?
'打印subprocess.check_output([ './的MyScript']) AttributeError的: '模块' 对象没有属性“check_output'' – misguided
@misguided:您是* * 2.7上,作为标签指示,对? – user2357112
Python 2.6.4,对于混淆抱歉。将删除标签。 – misguided