当前位置:  开发笔记 > 后端 > 正文

什么是相当于在Windows中读取和写入子进程的popen?

如何解决《什么是相当于在Windows中读取和写入子进程的popen?》经验,为你挑选了1个好方法。

Ruby的标准popen3模块在Windows上不起作用.是否有维护的替换,允许分离stdin,stdout和stderr?



1> Max Caceres..:

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 }"

推荐阅读
吻过彩虹的脸_378
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有