将文本输出捕获到日志中,同时将 RE​​ALTIME 打印到终端

将文本输出捕获到日志中,同时将 RE​​ALTIME 打印到终端

我的输出大约每秒在终端上打印 1 行,总共大概 100-200 行。

我尝试使用捕获输出tee,但它会在进程结束时打印所有行,而不是实时打印。

我也尝试使用该script命令,但是输出文件中有一些奇怪的字符,例如^M与结果一起打印的,这不好。

我怎样才能在捕捉的同时实时打印?

答案1

您需要使用类似以下方法更改程序的输出缓冲区行为stdbuf(1)

stdbuf -oL brasteins-program | tee brasteins-program.log

相关内容