Ruby的标准popen3模块在Windows上不起作用.是否有维护的替换,允许分离stdin,stdout和stderr?
POpen4 gem在unix和Windows之间有一个通用接口.以下示例(来自他们的网站)就像一个魅力.
require 'rubygems' require 'popen4' status = POpen4::popen4("cmd") do |stdout, stderr, stdin, pid| stdin.puts "echo hello world!" stdin.puts "echo ERROR! 1>&2" stdin.puts "exit" stdin.close puts "pid : #{ pid }" puts "stdout : #{ stdout.read.strip }" puts "stderr : #{ stderr.read.strip }" end puts "status : #{ status.inspect }" puts "exitstatus : #{ status.exitstatus }"