2
我有,要求用户输入,这是我保存到文件中,通过使用tee
的程序:重定向交互式命令的输出中对文件和终端
tee program.in | program
我也有捕获stdout和stderr在另一文件。这是卓有成效的
tee program.in | program > program.out 2>&1
的问题是,用户输入将会根据程序前输出什么要,所以用户必须看到终端程序输出。
有关如何完成此任何想法?
不幸的是,它不起作用。输出写入文件时,它不会打印在终端中。我可以打开终端并执行'tail -f program.out',但输出被缓冲,并且不会立即显示。 –
如果输出缓冲,那么'tee'也会延迟显示。尝试用'unbuffer'包装'program'(如果它在系统上可用)。祝你好运。 – shellter
另一个解决方案(我在通过Stack Overflow存档时发现这个问题)是用'script'包装所有东西。像这样的'script -c'tee grid09.in | grid09“-f grid09.out'完成了工作。 –