Мне нужно регулярно загружать файлы с FTP-сервера, и я обнаружил, что могу достаточно легко получить эти файлы с помощью wget.
wget -m --user=yyy --password=xxxx ftps://host.com.au
и это работает очень хорошо. Проблема в том, что он, очевидно, оставляет файлы на удаленном сервере, и в следующий раз, когда я запускаю скрипт, он получает их все снова.
Я видел, что у wget есть флаг --delete-after, который на первый взгляд кажется идеальным, но, как сказано в man-странице, он удаляет только локальные файлы, а не удаленные.
Есть ли способ достичь этой цели? К сожалению, это должно быть через ftp, поскольку у меня нет доступа к оболочке или rsync-доступа к удаленному серверу. Стоит ли мне искать что-то другое, чем wget?
решение1
Вместо этого wget
можно попробовать lftp
. Команда типа:
lftp site.com --user <username> --password <password> -e "mirror --Remove-source-files -v
в этой команде -e "mirror
используется для создания зеркала или удаленного сайта
--Remove-source
удалите исходные файлы после загрузки. Будьте очень осторожны с этой командой