我有一个长时间运行的Python脚本,从命令行运行。该脚本将进度消息和结果写入标准输出。我想在文件中捕获脚本写入到标准输出的所有内容,但也要在命令行上看到它。或者,我希望输出立即进入文件,这样我就可以使用tail
查看进度。我尝试过以下方法:
python MyLongRunngingScript.py | tee log.txt
但是它没有产生任何输出(只有运行脚本才会产生预期的输出)。有人可以提出一个简单的解决方案吗?我正在使用Mac OS X 10.6.4。
编辑:在我的脚本中,我使用print输出。
stderr
流重定向到stdout
:python -u MyLongRunngingScript.py 2>&1 | tee log.txt
。请注意,这里的log.txt
是保存脚本输出的文件名。 - stephenfin