2012-03-05 20 views
0

我想重定向输出,这种方式适用于由直接打印到stdout的C模块生成的输出。标准方法在此处不起作用:在libc级别重定向输出

sys.stdout = open('out.txt', 'w') 

因为这不在libc级别上运行。

函数freopen()可以做到这一点,但我怎么才能从Python中访问?

回答

2

os.open和适当的选项(os.O_WRONLY等)打开文件,然后执行os.dup2(<new fd>, 1)