(这是关于基于ncurses的Linux工具'对话')
我希望运行一个程序,并在此输出可用时立即在“dialog --programbox”中打印输出。我用这个例子进行测试:
dummyoutput | dialog --programbox "output" 20 70
其中'dummyoutput'是一个小的Python脚本,慢慢打印0到4:
#!/usr/bin/env python
import time
for i in range(5):
time.sleep(0.5)
print i
目前,显示了programbox,但所有输出仅在'dummyoutput'结束后显示。
是否可以实现每一行在programbox可用后立即显示(每半秒后一个数字)?
答案 0 :(得分:0)
@jordanm的评论很棒,而且很有效。然后我们可以在实际项目中轻松应用相同的原理。
它是一个使用log4j日志框架的Java应用程序。除了FileAppender,我还使用ConsoleAppender直接在控制台上显示特定的消息。 appender具有ImmediateFlush
属性。如果设置为true
,则输出显示在控制台上 - 并在对话框programbox中 - 一旦可用。