Использование mget для загрузки нескольких файлов из sftp

У меня есть код R , и с одной стороны я подключаюсь к sftp и пытается загрузить некоторые файлы. Файлы, которые необходимо загрузить, определяются кодом R и могут быть либо один, либо несколько. Я пытаюсь использовать mget для загрузки файлов, но он, похоже, не работает:

 sftp> mget abc.PDF def.PDF ghi.PDF Fetching /abc.PDF to def.PDF 

Это только загрузка abc.PDF и сохранение его как def.PDF в локальном каталоге, а не загрузка всех трех файлов. Что я делаю?

2 Solutions collect form web for “Использование mget для загрузки нескольких файлов из sftp”

mget работает с glob для части «исходного файла» аргументов (по крайней мере, в OpenSSH версии 7.3):

 sftp> ls *.pdf foo.pdf bar.pdf sftp> mget *.pdf Fetching /home/jdoe/bar.pdf to bar.pdf Fetching /home/jdoe/foo.pdf to foo.pdf sftp> 

Вам вместо этого нужно будет каким-то образом перекрыть файлы и получить их один за другим, если glob получит слишком много уловов.

Это не работает, потому что sftp OpenSSH не поддерживает это. Это mget – это то же самое, что и get (на самом деле, mget даже не документирован в help или manpage), и принимает только один аргумент имени удаленного файла (хотя этот аргумент может быть glob).

Таким образом, для использования SFTP-клиента OpenSSH вам нужно будет выдать один файл для каждого файла. Кроме того, вы можете использовать другой SFTP-клиент (например, lftp имеет mget который работает так, как вы хотите). Или (благодаря Gilles для напоминания), вам может быть удобнее использовать sshfs (через FUSE), а затем использовать обычные команды копирования файлов ( cp или любой другой R, встроенный).

  • Невозможно изменить разрешения на сервере назначения при выполнении sFTP
  • Головоломка: передача файлов между двумя серверами (ssh, ftp, http multipart ...)
  • Нужно выполнить логику по соединению sftp
  • Клиенты SFTP загружают файлы со слишком строгими правами
  • Можно ли обнаружить, когда файл был загружен?
  • Является ли Chroot Jail для SSH * и * SFTP?
  • Как предоставить sftp доступ к подкаталогу только не к родительскому
  • Как включить chrooted доступ SFTP к файлу в RHEL 6.5?
  • scp не может загружать / скачивать файлы, даже если ssh работает
  • Как запомнить пароль ssh с помощью lsyncd?
  • Мониторинг процесса sSSTP OpenSSH?
  • Interesting Posts

    Как nginx может получить доступ к своим файлам виртуального хоста по умолчанию, когда selinux включен?

    Сбой подключения к SSH

    Объединение двух файлов с уникальным идентификатором

    btrfs – снимок родительского подвыбора исключает дочерние подвыборы?

    Как отслеживать, что происходит во время входа в сеанс X11?

    SSH дважды и запустить команду, экранируя символ?

    Получить ширину отображения строки символов

    Какие файловые системы в Linux хранят время создания?

    Как получить свой собственный IP-адрес и сохранить его в переменной в сценарии оболочки?

    Как накапливать некоторые значения в столбце на основе информации в другом столбце из того же файла данных?

    Ожидание сбоя сценария при запуске из cron, но работает при запуске вручную

    можно ли отправить удаленный соединитель ip через netcat?

    отправить нажатие клавиши для обработки

    Как запустить длительный процесс на Udev-мероприятии?

    Как игнорировать строки начинаются с # с помощью grep / awk

    Linux и Unix - лучшая ОС в мире.