我正在使用 execvp() 运行多个命令。在我的 execs() 之一之前使用 dup2() 后,它会按预期重定向到 dup2() 中的文件。然而,问题是 dup2 之后发出的任何 execvp() 都会不断重定向回文件。我的问题是:如何使用 dup2 将输出重定向回标准输出?
最佳答案
您可以使用 dup() 和 dup2() 将 stdout 保存回来。
我建议您在 fork() (在子进程内)之后而不是之前执行 dup2() 重定向。
关于c - 如何在使用 dup2(..) 和使用 execvp(...) 后重定向回标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7640360/