Задать вопрос
aryeh
@aryeh
Молод (душой) и приятен в общении :-)

Какая утилита подобна wget, но умеет делать upload дерева файлов по https?

Собственно вопрос в заголовке.
WGET умеет только сгрузить, а необходимо загрузить и именно по https. В остальном WGET идеально подходит :-)
А CURL умеет работать только с одним файлом, а нужно дерево директорий с файлами.
Протокол только https, доступа к серверу по sftp, ftps и т.д. нет.
  • Вопрос задан
  • 204 просмотра
Подписаться 2 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 7
yesbro
@yesbro
Думаю, помогаю думать
Используй curl с получением дерева файлов через find

find MYDIR -type f -exec curl ***
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
прикол в том, что http в принципе не знает что такое файловая система, поэтому нужно писать скрипт, который оббежит ваши каталоги и зааплоадит файлы по одному.
Либо архивировать каталог и заливать уже архив со всем внутри, как это делают
Ответ написан
Комментировать
shambler81
@shambler81 Куратор тега Linux
Неправильно мыслишь.
1. если большое дерево то это будет очень, очень очень долго.
2. Кто мешает тебе совместить все это собрав в потоке архив и распаковать его на той стороне.
И так делаем в 1 потоке:
Архивируем | копируем | распраковываем > ложим. и да в примере архива не будет ни на той стороне ни на той, он будет только в канале
tar cvfz - --directory /var/www/3dpaneli.ru/web . |ssh root@89.207.93.148cd /tmp/test/aa;tar xvfz -"

Все плюсы как пофайлового копирования так и плюсы 1 поточного копирования присутствуют
4. Кто мешает тебе работаь через вебдав он https
5. csync rsync и тд
Ответ написан
Комментировать
@WSGlebKavash
Как именно реализован upload по https? Метод POST или полноценный webdav. Если webdav реализован корректно, то FileZilla, WinSCP, GNOME Files и Dolphin умеют закидывать дерево директорий с файлами. Если доступен только метод POST, то придётся писать скрипт рекурсивной обработки дерева катологов и использовать curl.
Ответ написан
trapwalker
@trapwalker
Программист, энтузиаст
А API вообще позволяет одним запросом сразу дерево загружать? Если да, то курлом по идее можно любой запрос сделать, поэтому можно и такой. Если нет и нужно делать много запросов, то придётся разбивать вашу задачу на много вызовов курла. В чем проблема? Пусть это будет батч с кучей простых вызовов курла по одному файлу. Почему нет?
Ответ написан
Комментировать
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Что, и SSH нет?
Тогда обходить все каталоги, и для каждого файла вызывать curl.
Ответ написан
Комментировать
gohdan
@gohdan
Системный администратор
lftp (lftp.yar.ru) в режиме reverse mirror (mirror -R /local/dir dir), она умеет https в том числе.

Только обязательно хорошо оттестируйте перед применением, если ошибиться в путях/флагах - легко рекурсивно поудалять то, что удалять не нужно. Например, непонятно, нужно ли вам удалять с сервера файлы, которых нет локально, а для этого есть отдельный флаг (по умолчанию, кажется, удаляет). Ну и лучше проверять наличие каталога на удалённом сервере и возможность в него зайти, а то отзеркалирует в корень (с потерей файлов, которые там могли уже быть).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы