class Net::SSH::Connection::Session

Public Instance Methods

exec_sudo(command, prompt = /password/, &block) click to toggle source
   # File lib/nuggets/net/ssh.rb
31 def exec_sudo(command, prompt = /password/, &block)
32   block ||= lambda { |data| ask(data) { |q| q.echo = false } }
33 
34   open_channel { |ch|
35     ch.request_pty
36 
37     ch.exec("sudo #{command}") { ch.on_data { |_, data|
38       ch.send_data("#{block[data]}\n") if data =~ prompt
39     } }
40 
41     ch.wait
42   }
43 end