Boost过程:如何将过程输出重定向到文件?

问题描述:

使用Boost :: Process库启动进程,我从标准输出读取输出没有问题。但是,如果我反而想将stdout重定向到一个文件,我该如何去做呢?Boost过程:如何将过程输出重定向到文件?

+0

请使用正确的标签为您的问题 –

+0

您是否需要捕获两者?如果不是的话,你可以使用附加的'>文件名'来启动子进程直接存储输出。 – MiltoxBeyond

+0

不知道我是如何去做与boost :: process库,米尔托克斯。 – ekramer17

猜你使用boost.process 0.5,你会做这样的说法:

boost::iostream::file_descriptor_sink fl("my_file"); 
namespace bp = boost::process; 

bp::child c = bp::execute(bp::set_cmd("ls"), bind_stdout(fl.handle())); 

如果你想使用boost.process 0.6(我建议你),你只写:

bp::child c("ls", bp::stdout > "my_file");