Записать CSV-файл в папку на удаленном компьютере - PullRequest
3 голосов
/ 22 января 2020

Я хотел бы записать CSV-файл в удаленную папку на компьютере, обозначенном user@ip-address, на котором установлена ​​другая ОС (например, моя текущая ОС iOS, а удаленная ОС - Ubuntu-19).

Ниже простой код сохраняет файл в локальной папке

write.csv(1:10, 'Save.csv')

Но я хочу иметь что-то вроде

write.csv(1:10, "root@xx.xxx.x.x:/folder/Save.csv")

Любой указатель будет высоко оценен.

Ответы [ 2 ]

2 голосов
/ 22 января 2020

Это представляется возможным с помощью функции cp.remote пакета s sh -utils

https://cran.r-project.org/web/packages/ssh.utils/ssh.utils.pdf

Обертка вокруг оболочки scp Команда, которая обрабатывает локальные / удаленные файлы и позволяет копировать между удаленными хостами через локальный компьютер.

cp.remote(remote.src, path.src, remote.dest, path.dest, verbose = FALSE,
via.local = FALSE, local.temp.dir = tempdir())
0 голосов
/ 22 января 2020

Не могли бы вы разделить его на два этапа?

  1. Сохраните его локально с помощью write.csv()

  2. Вызов iOS эквивалент scp (завернутый в R system()) для копирования файла на удаленный компьютер.

Это будет выглядеть как

write.csv(1:10, 'Save.csv')

system("scp Save.csv root@xx.xxx.x.x:/folder/Save.csv")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...