使用python输出到两个不同的控制台
问题描述
我正在编写脚本,我有两种不同的输出,比如op1和op2。我想将op1输出到从中调用python进程的终端,而op2应该转储到另一个终端实例。我可以这样做吗?即使答案是特定于Linux的,也可以,我需要一个临时解决方案。
解决方案
您可以将Python脚本写入文件,或将其输出通过管道传输到文件python script.py >> output.log
,然后您可以tail
使用-f
使其不断更新控制台上的视图。
示例代码段
# logmaker.py
import time
import datetime
buffer_size = 0 # This makes it so changes appear without buffering
with open('output.log', 'a', buffer_size) as f:
while(True):
f.write('{}
'.format(datetime.datetime.now()))
time.sleep(1)
运行该文件
python logmaker.py
然后在一个或多个控制台中执行
tail -f output.log
或less
根据您的喜好
less +F output.log
您应该会得到这样的持续更新
2016-07-06 10:52:44.997416
2016-07-06 10:52:45.998544
2016-07-06 10:52:46.999697
相关文章