Загрузка файлов и папок на ftp-сервер c помощью LFTP.
Относительно не давно столкнулся с проблемой что штатный ftp-клиент windows не корректно работает при передачи большого количества маленьких файлов. (Обрезает у файла пару байт) Победить сию проблему не смог, обошел путем использования стороннего FTP-клиента. В качестве клиента взял cygwin-версию LFTP.
команда для запуска выглядит так:
Файлик comm.ftp содержит ftp-команды для загрузки файлов на сервер.
Подключение к серверу:
Изменение кодировки (нужно если имена передаваемых файлов содержат русские буквы, кодировка зависит от настроек сервера):
Загрузить отдельный файл:
mput <путь к файлу>
Загрузить папку:
Переход по папкам на сервере:
-- переход в папку
-- переход на уровень вверх
Выход:
Так как используется Cygwin-среда, пути к файлам и папкам на пк имеют немного другой формат. Например, для D:\Temp\file.txt путь будет выглядеть как /cygdrive/D/Temp/file.txt
Пример файла comm.ftp:
open ftp://user:pass@server
set file:charset utf8
mput /cygdrive/D/Temp/file1
mput /cygdrive/D/Temp/file2
mirror -c -R /cygdrive/D/folder serverfolder
exit