Ruby Net::SCP下载请求密码但失败
我试图将文件从unix设备下载到内存缓冲区,然后将文件上载到另一个unix设备,但当我尝试下载文件时,它会询问我的密码,即使我将其放入,也会失败。我两个都试过了:Ruby Net::SCP下载请求密码但失败,ruby,Ruby,我试图将文件从unix设备下载到内存缓冲区,然后将文件上载到另一个unix设备,但当我尝试下载文件时,它会询问我的密码,即使我将其放入,也会失败。我两个都试过了: data = Net::SCP.download!("remote.host.com", "username", "/remote/path", :password => password) 及 但我得到: Active Directory Password: 然后,当我输入密码时: Net::SCP::Error: SCP
data = Net::SCP.download!("remote.host.com", "username", "/remote/path", :password => password)
及
但我得到:
Active Directory Password:
然后,当我输入密码时:
Net::SCP::Error: SCP did not finish successfully (1)
ruby 1.8.7(2010-12-23 patchlevel 330)[i386-mingw32]
net scp(1.0.4)试着这样使用它:
require 'net/scp'
data = nil
Net::SCP.start("remote.host.com", "username", :password => "password") do |scp|
data = scp.download!("/remote/path")
end
puts data
编辑:我只在ruby-1.9.3上试过这个,对不起试着这样使用它:
require 'net/scp'
data = nil
Net::SCP.start("remote.host.com", "username", :password => "password") do |scp|
data = scp.download!("/remote/path")
end
puts data
编辑:我只是在ruby-1.9.3上试过这个,很抱歉,看起来Net::SFTP将是我实际要使用的,它不会太多,而且可能是我最终得到的,因为我没有意识到在将它放到另一台服务器之前需要“编写”数据
data = nil
Net::SFTP.start('remoteHost1', 'username', :password => 'password') do |sftp|
data = sftp.download!("filepath1")
end
Net::SFTP.start('remoteHost2', 'username', :password => 'password') do |sftp|
sftp.file.open("filePath2", "w") do |f|
f.puts data
end
end
看起来Net::SFTP将是我实际要使用的,它不多,而且可能是我最终会使用的,因为我没有意识到在将数据放到另一台服务器之前需要“编写”数据
data = nil
Net::SFTP.start('remoteHost1', 'username', :password => 'password') do |sftp|
data = sftp.download!("filepath1")
end
Net::SFTP.start('remoteHost2', 'username', :password => 'password') do |sftp|
sftp.file.open("filePath2", "w") do |f|
f.puts data
end
end
传入
:verbose=>true
并查看发生了什么与以前相同的结果,感谢您的回复!我已经探索了一个使用Net::SFTP的解决方案,但我仍然很好奇为什么Net::SCP不起作用。请传入:verbose=>true
,然后查看发生了什么与以前相同的结果,感谢您的回复!我已经探索了一个使用Net::SFTP的解决方案,但我仍然很好奇为什么Net::SCP不起作用。这确实起作用,它看起来与我使用Net::SFTP开发的解决方案完全相同,这很有趣。但是,当我想在服务器上上传该文件时,SCP将无法像SFTP那样执行,我必须执行SFTP.file.open(“filepath”,“w'){f | f.puts data end}
SCP没有。文件
是的,SFTP可能是您想要做的正确的事情。这确实有效,它看起来与我使用Net::SFTP开发的解决方案完全相同,这很有趣。但是,当我想在服务器上上传该文件时,SCP将无法像SFTP那样执行,我必须执行SFTP.file.open(“filepath”,w'){f | f.puts data end}
SCP没有。文件
是的,SFTP可能是您想要执行的操作的正确选择