Tag: stderr

从Ruby C扩展中抑制STDOUT

我在项目中使用gem dep_selector ,无法弄清楚如何从库的C扩展中抑制stdout。 我想要压制的代码在这里: https://github.com/RiotGames/knife_cookbook_dependencies/blob/master/lib/kcd/shelf.rb#L26 我试过这个: real_stdout = $stdout $stdout = StringIO.new real_stderr = $stderr $stderr = StringIO.new puts “This gets suppressed correctly” selector.find_solution( … ) # still prints to the terminal 但是当我运行脚本时,我仍然得到dep_selector输出。 有任何想法吗?