Загрузка файлов и папок на ftp-сервер c помощью LFTP.

Относительно не давно столкнулся с проблемой что штатный ftp-клиент windows не корректно работает при передачи большого количества маленьких файлов. (Обрезает у файла пару байт) Победить сию проблему не смог, обошел путем использования стороннего FTP-клиента. В качестве клиента взял cygwin-версию LFTP.

команда для запуска выглядит так:

lftp.exe -f comm.ftp

Файлик comm.ftp содержит ftp-команды для загрузки файлов на сервер.

Подключение к серверу:

open ftp://<имя пользователя>:<пароль>@<адрес сервера>

Изменение кодировки (нужно если имена передаваемых файлов содержат русские буквы, кодировка зависит от настроек сервера):

set file:charset utf8

Загрузить отдельный файл:
mput <путь к файлу>

Загрузить папку:

mirror -c -R <путь к папке на компе> <имя папки на сервере>

Переход по папкам на сервере:

cd <имя папки>

-- переход в папку

cd ../

-- переход на уровень вверх

Выход:

exit

Так как используется 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


 

 
1 1 1 1 1 1 1 1 1 1 Рейтинг 0.00 [0 Голоса (ов)]

Добавить комментарий