From: Clemens Hintze Date: 2000-11-18T18:10:05+09:00 Subject: [ruby-talk:6437] Re: Two-Way Pipes with popen >>>>> "jweirich" == jweirich writes: jweirich> I want to start a process and feed it information jweirich> through its standard input and read the result from its jweirich> standard output. The "popen" command seems to do one or jweirich> the other, but not both at once. It there a way to do jweirich> this? (Currently I'm using a work-around using a jweirich> temporary file). Use: require "open3" childin, childout, childerr = Open3::popen3(cmd) Child is reading from 'childin', writing to 'childout' and 'childerr' jweirich> In a similar vein, is there an "expect"-like addon for jweirich> Ruby? You could use the Net::Telnet library. Use: require "net/telnet" conn = Net::Telnet.new "Host" => "localhost" conn.login "guest", "guest" : Read the documentation in the file: .../ruby/1.6/net/telnet.rb. Is not so fine like expect, but useable for most of the things. Alternatively you could try to use the 'expect.rb' with the 'childout' or whatever above. Simply require "expect" and from now an every IO instance has a method 'expect'. HTH, \cle