【问题标题】:Ruby Net::FTP Special Chars in FilenamesRuby Net::FTP 文件名中的特殊字符
【发布时间】:2012-02-11 20:29:38
【问题描述】:

我正在尝试从名称末尾有(在这种情况下)逗号的服务器获取文件。

#sc is my ftp connection, tmp is a Tempfile
sc.getbinaryfile(fname,tmp.path)

只要文件名末尾带有逗号,就会给我一个例外550 No such file or directory. (Net::FTPPermError)。在这个具体案例中,fnameBRr1gTuPaQ9USnybt-3F95rxD0VdQ42AT0rS4MeYSPIs2,。我也尝试通过我的 FTP 客户端连接到服务器 - 该文件确实存在并且可以下载。

我是否必须转义这个特殊的字符,比如逗号,或者我做错了什么?

【问题讨论】:

  • 我明确地尝试了这个 sc.getbinaryfile("BRr1gTuPaQ9USnybt-3F95rxD0VdQ42AT0rS4MeYSPIs2,") 并且没有任何问题。您使用的是哪个版本的 Ruby?
  • Mac OS,Linux 无关紧要——它们的行为完全相同。
  • 您可以访问 FTP 日志吗?你用的是什么FTP服务器?我也试过了(碰巧使用的是 JRuby 1.7.0 和 ProFTPd),效果很好。

标签: ruby ftp special-characters


【解决方案1】:

如果你这样做了..sc.genbinaryfile("#{fname}",tmp.path)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-19
    • 2017-04-06
    相关资源
    最近更新 更多