【问题标题】:How can I export a csv file on a remote server using ssh?如何使用 ssh 在远程服务器上导出 csv 文件?
【发布时间】:2017-10-10 20:20:05
【问题描述】:

我想将我的数据框导出为 csv 文件并使用 ssh 连接将其保存在服务器上。

以下命令行不起作用:

zz <- pipe('ssh -l username ip "touch /var/data/toto.csv"', "w")
write.csv(toto, file = zz, append = TRUE)
close(zz)

【问题讨论】:

    标签: r unix ssh


    【解决方案1】:

    你试过 scp 命令吗?示例:

    scp /var/data/toto.csv username@ip:/destination/dir

    在scp之前请写一个文件。

    我认为将文件流式传输到服务器会很困难,您可以编写一个文件块然后 scp 它。您是否尝试过用于 R 的 Rcurl 库?

    【讨论】:

    • 这就是我所做的,但这假设您创建了一个本地副本,然后将此本地文件复制到远程服务器上。是否可以从 R 直接在远程服务器上执行此操作?
    【解决方案2】:

    前提是您安装了一个密钥,这样ssh 就不会要求输入密码:

    zz = pipe('ssh -l username ip "cat >/var/data/toto.csv"', 'w')
    write.csv(toto, zz)
    close(zz)
    

    如果您真的想追加,请使用&gt;&gt; 而不是&gt;cat

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-11-29
      • 1970-01-01
      • 2016-04-25
      • 1970-01-01
      • 2020-10-29
      • 2017-06-03
      • 2021-09-07
      相关资源
      最近更新 更多