每次返回新输出时,将应用程序输出的最后一行重定向到文件

时间:2015-10-20 06:07:28

标签: linux bash shell redirect output

我试图仅在文件中存储正在运行的应用程序的输出的最后一行,每次应用程序返回带有输出的最后一条消息的值的新输出时替换文件的内容。例如,如果正在运行的应用程序helloworld产生以下输出:

Message1
Message2
Message3
Message4

我正在运行应用程序,如:

$ ./helloworld > output.txt

我希望output.txt文件始终存储最后一条消息,因此它首先包含:

Message1

然后,当应用程序返回Message2时,文件的内容将为:

Message2

等等。文件内容在任何给定时间基本上只有一行。

1 个答案:

答案 0 :(得分:2)

写入从stdin读取并写入输出文件的循环。

helloworld | while read i; do echo $i > output.txt; done