Net-Ssh


G

Gonçalo Pires

[Note: parts of this message were removed to make it a legal post.]

Hi there,

I'm trying to develop a script that will use net-ssh to performe some
routine commands on a remote server.

But i've a problem when i give a comand that will change the remote system
prompt. I think ruby is expecting the default caracter "#", but the command
will change it to ">", and the script don't run.

require 'net/ssh'
Net::SSH.start('172.16.20.78', 'root', :password => "passwd" ) do |
ssh|
output = ssh.exec!("su - sysad")
end

Could you please tell me I could I change the "expected" prompt?

Best regards,
GP
 
Ad

Advertisements

Ad

Advertisements

B

Brian Candler

Gonçalo Pires said:
Hi there,

I'm trying to develop a script that will use net-ssh to performe some
routine commands on a remote server.

But i've a problem when i give a comand that will change the remote
system
prompt. I think ruby is expecting the default caracter "#", but the
command
will change it to ">", and the script don't run.

require 'net/ssh'
Net::SSH.start('172.16.20.78', 'root', :password => "passwd" ) do |
ssh|
output = ssh.exec!("su - sysad")
end

Could you please tell me I could I change the "expected" prompt?

I don't think raw Net::SSH waits for a prompt. It works at a lower level
of the SSH protocol protocol units.

If you want an expect-like interface, you could try Net::SSH::Telnet
(separate package). This is something I wrote to give an API almost
identical to Net::Telnet.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top