I want to extend Rake with a method rshell, which would enable anyone
to execute a command remotely on various UNIX boxes.
Also, if the command asks for input, then remote process’s stdin
should be connected to current processes stdin. So, if the command
asks for input, user can type it from current machine.
I have looked into Net::SSH, but can’t find a reliable way to
connecting remote processes stdin to current process.
Capastrino does something like this, but not sure how?
I am trying on these lines
module Rake
class RemoteShell
attr_accessor :remote_ip,:user,:password,:remote_shell,:channels
def start_ssh_session @channels ||= [] @channels << Net::SSH.start(@remote_ip,@user,@password)
end
def r_shell command
# open a channel and execute the command
# remote process should be connected to current process stdin
end
end
end
=> nil
class String
include A
end
=> String
“foo”.say_hello
hello world
=> nil
Thanks Gregory, I guess I can easily handle how to extend Rake. My
chief problem is, right now how can i attach remote process’s stdin to
current terminal’s input.
Thanks Gregory, I guess I can easily handle how to extend Rake. My
chief problem is, right now how can i attach remote process’s stdin to
current terminal’s input.
There is a chance it might be in the Net::SSH manual. I’m not sure if
you’ve found this yet.