从命令行可执行文件输入/输出重定向到文件

从命令行可执行文件输入/输出重定向到文件

问题描述:

如何从输入取自文件的程序(使用“<”)保存所有输入(cin)和输出(cout,cerr)?我希望输入和输出的顺序是(,所以每个输入后跟相应的输出,就像我在我自己输入输入一样)。我试过“>”输出一切到一个文件,但只保存标准输出(无输入/ cerr),只是简单地复制命令行输出仍然只给出没有输入的输出(因为“ <“作品)。从命令行可执行文件输入/输出重定向到文件

有没有办法将所有(输出+输入)以的顺序写入文件

编辑:编辑为清楚起见

EDIT2:我只是意识到,这是不可能做什么,我试图做的,因为控制台不知道什么时候会实际输入的命令任何东西。我将不得不手动输入命令并使用“脚本”命令来实际记录所有输入/输出。

+0

'myProg out; cat in out >> combined_out'。 – 2012-04-13 18:46:38

您需要CERR添加到流

命令>文件2 &> 1

这意味着放2(错误)到1(标准输出)为好。

+0

这只给出没有输入的输出(记住,输入也是从文件重定向) – Dilation 2012-04-13 18:54:00

+0

stdin是一个单独的流,不受组合的影响:命令 outputfile 2&> 1 – johnshen64 2012-04-13 19:03:10