C 如何在类Unix的shell中保存交互式命令行程序的输出?

C 如何在类Unix的shell中保存交互式命令行程序的输出?,c,shell,unix,command-line,redirect,C,Shell,Unix,Command Line,Redirect,我用C语言编写代码,并在Linux终端上运行程序。我想把程序的输出保存在一个.txt文件中。我通常通过执行/a.out>filename.txt 但是我写了一个互动程序,我必须输入一个数字来启动这个程序。那样的话,我该怎么做 非常感谢,欢迎您提出宝贵建议。将输入数字的要求从终端移到命令行参数 ./a.out 42 > filename.txt ./a.out 42>filename.txt 或者,更简单的是,接受来自重定向输入的输入 echo 42 | ./a.out > filen

我用C语言编写代码,并在Linux终端上运行程序。我想把程序的输出保存在一个.txt文件中。我通常通过执行
/a.out>filename.txt

但是我写了一个互动程序,我必须输入一个数字来启动这个程序。那样的话,我该怎么做


非常感谢,欢迎您提出宝贵建议。

将输入数字的要求从终端移到命令行参数

./a.out 42 > filename.txt ./a.out 42>filename.txt 或者,更简单的是,接受来自重定向输入的输入

echo 42 | ./a.out > filename.txt ./a.out < input.txt > filename.txt echo 42 |/a.out>filename.txt ./a.outfilename.txt 试试这个

./a.out | tee filename.txt

您可以使用
脚本
将所有输出捕获到文件中


假设您已经在名为“input.txt”的文件中输入了希望传递给程序的数字。如果要将输出重新定向到“output.txt”,请在命令行中键入:

./a.out  <  input.txt  >  output.txt
/a.outoutput.txt

这不允许访问stdin来输入参数。实际上,当代码不是交互式的,但需要我们方面的一些输入时,您的建议有效。它是dsnt单词…无论如何,您的回复是正确的。最终它成功了,因为您的建议,实际上我在输入innitially时出错了。thanx buddy再一次