Страница 1 из 1

Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 11:44
alex5518
Приветствую!
Устройство RB3011UiAS-RM

Есть удаленный сервер с фтп
Необходимо выкачивать все что на нем на флешку которая стоит в микротике.
Мои эксперименты с fetch увенчались успехом, но только на конкретный файл. А на сервере файлов порядка 50 их имена динамические.
Мои виденье такое:
1. получить список файлов на удаленном сервере
2. циклом прогнать полученный массив и скачивать каждый файл по отдельности fetch'ем

Застрял на 1 пункте.
Буду рад услышать как правильнее поступить в решении данной задачи, спасибо!

Re: Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 14:44
vqd
к сожалению список файлов не получить :-(

Re: Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 15:02
Dragon_Knight
А MetaROUTER на ARM есть? Если есть то копать в ту сторону.

Re: Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 15:07
enzain
alex5518 писал(а):Приветствую!
Устройство RB3011UiAS-RM

Есть удаленный сервер с фтп
Необходимо выкачивать все что на нем на флешку которая стоит в микротике.
Мои эксперименты с fetch увенчались успехом, но только на конкретный файл. А на сервере файлов порядка 50 их имена динамические.
Мои виденье такое:
1. получить список файлов на удаленном сервере
2. циклом прогнать полученный массив и скачивать каждый файл по отдельности fetch'ем

Застрял на 1 пункте.
Буду рад услышать как правильнее поступить в решении данной задачи, спасибо!


Предлагаю ЗАГРУЖАТЬ на микротик с фтп сервера. (если там не микротик)

Re: Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 16:07
podarok66
Ну так на серваке делайте файл со списком. Что-то типа там:

Код: Выделить всё

ls | awk -F. '{print $1}' | paste -s -d ',' > spisok.txt

Естественно, не обязательно именно такой вид команды и файл в том же каталоге. Тут всё по желанию и по надобности.
И потом уже этот файлик к себе тем же fetch и его обработайте

Код: Выделить всё

:local e [:toarray [/file get [/file find name=spisok.txt] contents]]; 
 :put $e

Вот вам и массив. Правда я с ними так и не научился вольно работать, поэтому помочь тут не смогу, наверное. Если у вас есть продолжение, хотел бы его увидеть. Для самообразования, так сказать...

Re: Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 16:13
vqd
podarok66 писал(а):Ну так на серваке делайте файл со списком. Что-то типа там:

угу, только есть проблемка )) Если он будет больше чем 4к микротик его не прочтет (ну и классика, обещают поправить в РОС7)

Re: Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 16:22
podarok66
Блин, если список файлов больше 4К, то под обработку не Микротик, а полноценный сервер надо))). А команда на сервере в том виде, что я дал, при каждом исполнении не дописывает, а перезаписывает файл. Кстати, файлы с точкой в начале имени не учитываются в этом варианте команды.

Re: Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 19:23
enzain
podarok66 писал(а):Блин, если список файлов больше 4К, то под обработку не Микротик, а полноценный сервер надо))). А команда на сервере в том виде, что я дал, при каждом исполнении не дописывает, а перезаписывает файл. Кстати, файлы с точкой в начале имени не учитываются в этом варианте команды.


Да проще каждый файл залить на микротик с сетвера тогда при таком количестве все-таки ...
Хотя смотря зачем они там нужны, конечно ... Может их сам микротик должен как то обработать ...

Re: Выкачивание файлов с удаленного сервера

Добавлено: 04 фев 2018, 20:47
podarok66
Я тут у себя просто посмотрел вывод ls из одного каталога в файл - 204 имени при размере файла 1581 b . Ну вот и прикидывайте, если там стандартные линуксовые имена столько занимают, то даже длинных имен будет едва ли меньше сотни на 4k файл. Не вижу смысла даже заморачиваться на Тике с закачкой, а затем обработкой такого количества файлов. Не для того эта железка придумана. Тут уж вот точно проще Малинку поставить для таких задач.

Re: Выкачивание файлов с удаленного сервера

Добавлено: 09 фев 2018, 12:00
vqd
Мне приходилось все же решать задачу с загрузкой кучи файлов по средствам ФТП.
Там по проекту нужна была автоматизированная система по загруке карточек доступа.

ТОесть где то генерируют таблице карточка - пароль, заказывают печать карточек в типографии и потом по объектам распределяют. Система собственно выгружала весь эот пул и запихивала в хотспот (радиус там не вариант, да и клиент был против ибо все должно быть автономно)
Потом еще отправляла отчет об использованых карточках и о количестве живых