Мой сценарий настроен на это для lftp
lftp -p 2218 -u $login,$pass sftp://$host << EOF
set mirror:use-pget-n 5
mirror -c -P5 --depth-first --Remove-source-files --log=/home/dog/downloadsync.log $remote_dir $local_dir
И он отлично работает, за исключением того, что он оставляет пустые папки в удаленном каталоге КАЖДЫЙ ВОНЯЩИЙ ВРЕМЯ. Я пробовал без --depth-first
и он все равно оставит их.
Я пробовал добавить rmdir *
после зеркала и до выхода, но это создает серьезные проблемы, если скрипт падает [не спрашивайте эту историю] Есть ли какое-нибудь решение?
Используйте lftp-4.7.1 и зеркало - Перемещение вариант. Он удалит исходные файлы и пустые папки. Эта опция впервые появилась в lftp-4.7.0.