&"-6ren"> &"-我已经对此进行了编码,但我不确定如何让它以任何其他方式工作。我也很欣赏如何测试其正确性的示例代码。 感谢帮助 dup2(STDOUT_FILENO, STDERR_FILENO); dup2(fd, -6ren">
gpt4 book ai didi

c - 将 STDOUT 和 STDERR 重定向到文件 ">&"

转载 作者:太空宇宙 更新时间:2023-11-04 08:14:16 24 4
gpt4 key购买 nike

我已经对此进行了编码,但我不确定如何让它以任何其他方式工作。我也很欣赏如何测试其正确性的示例代码。

感谢帮助

dup2(STDOUT_FILENO, STDERR_FILENO);
dup2(fd, STDOUT_FILENO);

最佳答案

你很接近,但你需要以相反的顺序执行两个 dup2 调用。

dup2(fd, STDOUT_FILENO);
dup2(STDOUT_FILENO, STDERR_FILENO);
close(fd);

您的代码等同于 POSIX shell 语法(适用于所有语法基于 Bourne shell 的 shell):

2>&1 >filename

这使得 stderr 转到 old stdout 而将 stdout 重定向到文件。

关于c - 将 STDOUT 和 STDERR 重定向到文件 ">&",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36729066/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com