Net-ssh : popen3

Hi everybody,

I want to start and interact with a process on another machine.
After reading example 20.10 in "The Ruby Cookbook" and doing some internet
research I decided to use net/ssh and popen3.
Sadly, it does not work - it just doesn't do anything noticeable, it
doesn't even terminate.

Here's my code:

----------- CODE ----------------

require 'rubygems'
require 'net/ssh'

def run_remotely(command)
    Net::SSH.start("localhost", "tester", :password => "pass") do |session|
      session.process.popen3(command) do |stdin, stdout, stderr|
        yield stdin, stdout, stderr
      end
    end
end

run_remotely('cat') do |stdin, stdout, stderr|
    stdin.puts 'Line one.\n'
end

----------- /CODE ----------------

Why doesn't this work?

Thanks,

Philip

P.s.:
I have successfully used channel.exec to execute "ls", but it doesn't seem
like it allows two-way communication.

Sorry...

run_remotely('cat') do |stdin, stdout, stderr|
    stdin.puts 'Line one.\n'
end

is supposed to be

run_remotely('cat') do |stdin, stdout, stderr|
   stdin.puts 'Line one.\n'
   puts stdout.read
end

Regards

Philip

···

On Tue, 04 Nov 2008 16:09:05 +0100, Philip Müller <me@alienemperor.de> wrote: