2012-07-20 70 views
0

我的问题是我有一个函数调用它的function1,它无限期地运行。函数本身每1秒回显一次“hello”。使用命令:Ubuntu在过程执行过程中将信息传递到文本文件

function1 >> temp.txt 

如果我查看TEMP.TXT我应该看到“你好”的新行的文件每隔1秒。但是,发生的情况是该函数在完成运行之前不会写入文件。因此,如果我要杀死函数,将不会写入任何内容。有没有人知道我可以在这种情况下做的事情,基本上会动态更新temp.txt?

我有一个python脚本设置方式如下:

while [1>0]: 
    print "hello" 
    time.sleep(1) 

因此,这将始终运行。现在我在bash脚本中调用它

python pythonscript.py >> temp.txt 

如果我kill进程没有数据被记录。

回答

0

您打算在每次打印后清空缓冲区。

import time 
import sys 

while [1>0]: 
    print "hello" 
    sys.stdout.flush() 
    time.sleep(1) 

这也适用于其他操作系统。

+0

完美的作品非常感谢你! – 2012-07-23 14:31:02