如何在使用dup2(..)和使用execvp(...)后重定向回stdout

时间:2011-10-03 20:37:56

标签: c exec stdout std

我使用execvp()运行多个命令。在我的一个execs()之前使用dup2()后,它会按预期重定向到dup2()中的文件。但是,问题是dup2之后的任何execvp()都会被重定向回文件。我的问题是:如何使用dup2将输出重定向回stdout?

1 个答案:

答案 0 :(得分:3)

您可以使用dup()和dup2()将stdout保存回来。

我建议您在fork()(在子进程内)而不是在它之前执行dup2()重定向。