Tag: exec

Ruby Net :: SSH使用变量插值更改目录

我对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

`exec’:string包含空字节(ArgumentError)

cmd = “snv co #{rep} –username #{svn_user} –password #{pxs}” puts cmd # this code wotks and prints all vars values normally exec(cmd) xpto.rb:69:in `exec’: string contains null byte (ArgumentError) from xpto.rb:69 $ ruby -v ruby 1.8.7 (2010-01-10 patchlevel 249) [i686-linux] $ gem -v 1.3.7 这是怎么回事? 我怎么解决这个问题?