我正在编写一个C ++应用程序,我希望同时将所有应用程序输出(断言,异常,段错误)捕获到文本文件和控制台中。我怎么能这样做?
答案 0 :(得分:2)
您可以使用tee
命令:
$ /path/to/myapp 2>&1 | tee /path/to/file.log
答案 1 :(得分:1)
使用dup2函数重定向stdout_fileno,例如:
fd = open(filename, O_CREAT|O_APPEND|O_WRONLY, 0755);
close(STDOUT_FILENO);
dup2(fd, STDOUT_FILENO);