私はRubyにかなり慣れていないので、明らかな何かが欠けている場合はご容赦ください。
問題は、Ruby が Net::SSH.exec で変数補間を行っていないように見えることです! 方法。
VCL_DIR = "/usr/local/etc/varnish/"
host = '0.0.0.0'
Net::SSH.start(host, 'root') do |ssh|
puts "Changing directories to #{VCL_DIR}"
ssh.exec!("cd #{VCL_DIR}")
res = ssh.exec!("pwd")
puts "Server reports current directory as #{res}"
end
出力:
Changing directories to /usr/local/etc/varnish/
Server reports current directory as /root
どんな助けでも大歓迎です。Ruby 1.9.3p194 の使用