From: Luis Lavena Date: 2008-06-10T04:15:21+09:00 Subject: Re: Net::SSH problems On Jun 9, 2:14 pm, Bob Smyph wrote: > stephen O'D wrote: > > On Jun 6, 12:33 pm, Bob Smyph wrote: > >>         from c:/ruby/lib/ruby/site_ruby/1.8/net/ssh.rb:189:in `start' > >>   shell.cd "/file/trying/to/cd/to" > >> end > > >> ----- > > >>  - I would greatly appreciate any help. > >> -- > >> Posted viahttp://www.ruby-forum.com/. > > > Not sure what is wrong - I do something similar (this is snipped from > > a bigger application, so it may not be the most idiomatic way to do > > this, but it seems to work): > > > Net::SSH.start( CONFIG['target_machine'], CONFIG['user'], > > CONFIG['password'] ) do |session| > >       shell = session.shell.sync > >       shell.send_command 'y' # To answer the 'are you allow to > > authorize this computer questions > > >       commands = [ > >         "cd #{remote_dir}", > >         "chmod 777 somescript.ksh", > >         "./somescript.ksh" > >         ] > > >       commands.each do |c| > >         out = shell.send_command c > >       end > > end > > > I know the 'build an array of commands' is silly here, but as I said > > its part of a bigger app - it does the 'cd', 'chmod' and runs the > > script with no issues however. > > I tried the above and I still get the same error. > > # (NoMethodError) >         from c:/ruby/lib/ruby/site_ruby/1.8/net/ssh.rb:189:in `start' >         from C:/ruby/test/SSHtest.rb:95 > > Any more ideas? > What version of Ruby are you using? In the first same looks like you're using ruby builtin Net::SSH support, but dunno if shell is being part of a Session instance. On the second example, looks like it even worse, but looking at the line numbers (95!) seems you have a huge script. Can you reproduce the problem in a small one and pastie it to us so we can trace it? (try providing the full backtrace to ease the task). Thanks, -- Luis Lavena