【发布时间】:2011-03-31 13:20:39
【问题描述】:
如果我使用这样的命令:
./program >> a.txt &
,并且该程序是一个长时间运行的程序,然后我只能在程序结束后才能看到输出。这意味着我无法知道计算是否顺利,直到它真正停止计算。我希望能够在程序运行时读取文件中的重定向输出。
这类似于打开一个文件,附加到它,然后在每次写入后关闭它。如果文件仅在程序结束时关闭,则在程序结束之前无法读取任何数据。我知道的唯一重定向类似于在程序结束时关闭文件。
您可以使用这个 Python 小脚本对其进行测试。语言无所谓。任何写入标准输出的程序都有同样的问题。
l = range(0,100000)
for i in l:
if i%1000==0:
print i
for j in l:
s = i + j
可以通过以下方式运行它:
./python program.py >> a.txt &
然后 cat a.txt .. 只有脚本完成计算才能得到结果。
【问题讨论】: