【发布时间】:2012-09-04 17:09:36
【问题描述】:
我第一次尝试在 RCurl 包中使用ftpUpload。
我尝试访问的站点使用 sftp 协议。我已确保安装包含建立安全连接功能的 libcurl 版本。
SFTP 列在 RCurl 可用的协议中:
curlVersion()$protocols
[1] "dict" "file" "ftp" "ftps" "gopher"
[6] "http" "https" "imap" "imaps" "ldap"
[11] "pop3" "pop3s" "rtmp" "rtsp" "scp"
[16] "sftp" "smtp" "smtps" "telnet" "tftp"
然而,当我运行 fileUpload 函数时,我得到:
ftpUpload(what = "some_file.png",
to = "userid:password@sftp://ec2-some-server-ip.compute-1.amazonaws.com")
Error in function (type, msg, asError = TRUE) :
Couldn't resolve host 'sftp'
我也尝试在参数化方面打破userid 和password,但我得到了相同的响应。
任何建议将不胜感激。
【问题讨论】:
-
您的
to看起来不是有效路径。我希望它看起来更像:“sftp://ec2-some-server-ip.comput-1.amazonaws.com/path/to/some_file.png”。另外,“some_file.png”是您工作目录中文件的名称吗? -
我已经尝试过既指向根目录,又尝试了根目录中的子文件夹,就像您建议的那样。虽然我没有尝试将实际文件名放在最后。这仍然给出了相同的信息。是的,
some_file.png在我的工作目录中。 -
您是否尝试使用“ftp://...”而不是“sftp://...”?
-
是的,路径字符串的所有变体。相同的消息。
-
@Topher,我认为你应该发布一个答案并接受它,因为我有点猜测,你确切地知道你的电话是什么样的。