我想寫一個Ruby腳本,將ssh到服務器,運行給定的命令,並從中獲取輸出。這裏就是我這麼遠,大多是從Programming Ruby書改編:紅寶石 - 問題與期望和Pty
require 'pty'
require 'expect'
$expect_verbose = true
PTY.spawn("ssh [email protected]") do |reader, writer, pid|
reader.expect(/[email protected]'s password:.*/)
writer.puts("password")
reader.expect(/.*/)
writer.puts("ls -l")
reader.expect(/.*/)
answer = reader.gets
puts "Answer = #{answer}"
end
不幸的是所有我得到回是這樣的:
Answer = .y's password:
任何想法,我做錯了,以及如何緩解這一點?
鏈接已死亡... – ScottJ 2014-11-29 05:16:08