1

Я пытаюсь настроить скрипт, который синхронизирует все изображения в удаленном каталоге FTP с локальным каталогом, который я могу запускать на регулярной основе, чтобы убедиться, что все новые изображения добавлены в удаленный каталог. Я пытался найти решение, используя wget, но я просто не могу понять синтаксис правильно. Вот что у меня есть:

wget -r -N --no-remove-listing -nd ftp://user:password@ftp.server.com/images/

Кажется, все, что нужно сделать, - это создать локальный файл index.html со списком ссылок на удаленные файлы (что мне не нужно). Как мне изменить эту команду, чтобы она просто загружала все изображения в удаленный каталог? Кроме того, есть ли другая команда Unix, я могу попытаться синхронизировать изображения с удаленного FTP-сайта?

3 ответа3

1

Кто-то предложил мне использовать команду lftp (http://lftp.yar.ru/lftp-man.html) следующим образом:

lftp -c 'open ftp.server.com; user username password; mirror -e --only-missing images .; quit'

Кажется, работает хорошо, и он встроен в большинство разновидностей Unix.

0

Если вы хотите использовать WGET , попробуйте с помощью переключателя A указать допустимые расширения файлов:

wget -r --accept=jpg,gif,png ftp://user:password@ftp.foobar.com/blah/*
0

Вы также можете попробовать ncftpget из пакета ncftp. Смотрите http://www.ncftp.com/, но попробуйте установить пакет ncftp для вашего дистрибутива.

Из "man ncftpget"

-R      Recursive mode; copy whole directory trees.

You  can retrieve an entire directory tree of files by using the -R flag.  However, this will work only if the remote FTP server is a UNIX server, or emulates UNIX's list output.
   Example:

       $ ncftpget -R ftp.ncftp.com /tmp /pub/ncftp

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .