Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何从后台进程重定向日志 < >我有C++程序,叫做 MyAPP < /C> >下面 #include <iostream> int main(int argc, char *argv[]) { for(int a = 0; a < 50; a++) { std::cout << "Hello stackoverflow" << std::endl; } return 0; }_Linux_Bash_Shell_Command Line - Fatal编程技术网

Linux 如何从后台进程重定向日志 < >我有C++程序,叫做 MyAPP < /C> >下面 #include <iostream> int main(int argc, char *argv[]) { for(int a = 0; a < 50; a++) { std::cout << "Hello stackoverflow" << std::endl; } return 0; }

Linux 如何从后台进程重定向日志 < >我有C++程序,叫做 MyAPP < /C> >下面 #include <iostream> int main(int argc, char *argv[]) { for(int a = 0; a < 50; a++) { std::cout << "Hello stackoverflow" << std::endl; } return 0; },linux,bash,shell,command-line,Linux,Bash,Shell,Command Line,问题: 如上所示,我希望日志输出进入/some/output.txt。这很有效。但问题是,在将couts添加到txt文件的同时,日志也会不断向控制台发送垃圾邮件!如何使cout进入/some/output.txt而不在控制台中发送垃圾邮件?有没有办法做到这一点,或者我必须改变MyApp中的C++逻辑才能做到这一点?MyApp>/tmp/output.txt&–Brian Agnew在您所展示的示例中,它确实会像您所说的那样向终端发送垃圾邮件,因为所有stdout内容都会写入文件。您有一些日志语句

问题:

如上所示,我希望日志输出进入
/some/output.txt
。这很有效。但问题是,在将
cout
s添加到txt文件的同时,日志也会不断向控制台发送垃圾邮件!如何使
cout
进入
/some/output.txt
而不在控制台中发送垃圾邮件?有没有办法做到这一点,或者我必须改变
MyApp
中的
C++
逻辑才能做到这一点?

MyApp>/tmp/output.txt&–Brian Agnew

在您所展示的示例中,它确实会像您所说的那样向终端发送垃圾邮件,因为所有stdout内容都会写入文件。您有一些日志语句写入标准错误流吗?没有。我没有任何日志语句写入错误流。我只想知道如何处理<代码> cOUT/CODEX>,并将它们强制转换成TXT文件,而不必更改应用程序本身的C++代码(如果可行)。根据我做的重要编辑,只需重定向stdout(cout写入的流)和stderr。我正在后台运行
MyApp
。因此,我运行的命令是
MyApp&>/some/output.txt
@brianagne您对
MyApp>/tmp/output.txt&
的建议起到了作用。我可以接受它作为一个答案,如果你张贴一个。或者我应该结束这个问题,因为你提到了一个有解释的链接?
MyApp & >> /some/output.txt