无法读取正在运行 C 程序生成的文本文件

无法读取正在运行 C 程序生成的文本文件

我有一个小的 C 程序 d,它运行时间很长,并产生大量文本输出。当我使用 ./d 运行该程序时,我可以看到输出在屏幕上滚动,但如果我执行
./d > d10.txt,我无法使用 cat d10.txt 读取 d10.txt,直到程序完成。为什么会这样?在程序运行时我可以做什么来监视输出?谢谢任何提示 H

答案1

您看不到输出,因为您正在将其重定向到文件中。

要查看输出并将其存储在文件中,请使用以下tee程序:

./d | tee d10.txt

您也可以这样做,但这需要做更多的工作:

> d10.txt
tail -f d10.txt &
./d >> d10.txt
kill %1

相关内容