Ruby FTP sendcmd error - PullRequest
       8

Ruby FTP sendcmd error

0 голосов
/ 26 января 2011
ftp = Net::FTP.new(IPAddress)
ftp.login(UserName, Password)
ftp.sendcmd("prompt")
ftp.sendcmd("mget filename*")

Этот код возвращает следующую ошибку.

/usr/lib/ruby/1.9.1/net/ftp.rb:261:in `getresp': 500 'PROMPT': command not understood (Net::FTPPermError)
        from /usr/lib/ruby/1.9.1/net/ftp.rb:269:in `voidresp'
        from /usr/lib/ruby/1.9.1/net/ftp.rb:292:in `block in voidcmd'
        from /usr/lib/ruby/1.9.1/monitor.rb:190:in `mon_synchronize'
        from /usr/lib/ruby/1.9.1/net/ftp.rb:290:in `voidcmd'

Почему Ruby преобразует мою команду в верхний регистр, а я передаю ее в нижнем регистре.

1 Ответ

0 голосов
/ 26 января 2011

Я не думаю, что sendcmd используется таким образом. Попробуйте эту альтернативу

require 'net/ftp'
user="user"
pass="password"
server="server"
Net::FTP.open(server) do |ftp|
    ftp.login(user,pass)
    ftp.nlst("filename.*").each do |file|
        ftp.getbinaryfile(file,file)
    end
    ftp.close
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...