【问题标题】:sftp with R - sftp not a protocol with RCurl带有 R 的 sftp - sftp 不是带有 RCurl 的协议
【发布时间】:2017-09-25 18:33:49
【问题描述】:

我已经阅读了一些关于使用 R 的 sftp 的帖子,但无法解决我遇到的问题。有一个不错的变化我只是没有在正确的地方搜索,如果是这种情况,请指出我正确的方向。这是我所在的位置:

> library(RCurl)
> curlVersion()
$age
[1] 3

$version
[1] "7.43.0"

$vesion_num
[1] 469760

$host
[1] "x86_64-apple-darwin15.0"

$features
     ipv6       ssl      libz      ntlm asynchdns    spnego largefile   ntlm_wb 
        1         4         8        16       128       256       512     32768 

$ssl_version
[1] "SecureTransport"

$ssl_version_num
[1] 0

$libz_version
[1] "1.2.5"

$protocols
 [1] "dict"   "file"   "ftp"    "ftps"   "gopher" "http"   "https"  "imap"   "imaps"  "ldap"   "ldaps"  "pop3"   "pop3s"  "rtsp"   "smb"    "smbs"   "smtp"   "smtps"  "telnet" "tftp"  

$ares
[1] ""

$ares_num
[1] 0

$libidn
[1] ""

马上,我注意到 sftp 不是我当前版本的 RCurl 接受的协议,这是我的主要问题。结果,当我运行以下代码时,出现以下错误:

# Input 
protocol <- "sftp"
server <- "00.000.00.00"
userpwd <- "userid:userpass"
tsfrFilename <- 'myfile.txt'
ouptFilename <- 'myfile.txt'

# Run
url <- paste0(protocol, "://", server, tsfrFilename)
data <- getURL(url = url, userpwd = userpwd)

Error in function (type, msg, asError = TRUE)  : 
  Protocol "sftp" not supported or disabled in libcurl

其实我还有第二个问题。我的理解是 getURL 从另一台服务器获取数据并将其拉到我的本地计算机上,而我想从我的本地计算机上将文件放到服务器上。

总结一下:(1) 我可以更新 R 中的 RCurl / libcurl 以支持 sftp,以及 (2) 我如何将文件从本地计算机放入服务器,而不是从服务器获取文件到本地计算机?

谢谢!

【问题讨论】:

    标签: r sftp rcurl


    【解决方案1】:

    我找到了答案,大部分...

    http://andrewberls.com/blog/post/adding-sftp-support-to-curl - 点击此链接为我解决了问题。

    我已经成功地为 cURL 添加了 sftp 支持,但是我现在正在努力更新 RCurl 包以使其具有相同的...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-05-17
      • 1970-01-01
      • 2014-08-18
      • 2017-08-04
      • 1970-01-01
      • 2013-04-13
      • 2013-11-18
      相关资源
      最近更新 更多