Мне нужно скачать FTP-сайт (фактически исходный код веб-сайта), содержащий очень большое количество относительно небольших файлов (загрузка его с помощью FileZilla заняла больше дня, но я считаю, что его можно было бы загрузить намного быстрее, если бы много файлов были скачаны сразу). К сожалению, нет SSH-доступа к сайту и нет возможности архивировать файлы на стороне сервера.
Таким образом, по крайней мере, вопрос заключается в том, как загрузить весь FTP-сайт в папку с помощью инструментов командной строки. Лучше было бы распараллеливать загрузку, загружая одновременно несколько файлов, а не один за другим.
Попробуйте следующее:
wget -r ftp://username:password@myserver.com
это перейдет к 5 уровням глубины; для увеличения добавьте -l
опция
Некоторым серверам не нравится это поведение, и Вы рискуете попадать в черный список из-за нагрузки на сервер. Для предотвращения этого используйте -w
опция ожидать конкретное количество секунд.
Больше информации (а также протесты) может быть найдено здесь:
http://www.gnu.org/software/wget/manual/wget.html#Recursive-Download
http://linuxreviews.org/quicktips/wget/
--user
и --password
аргументы полезны для имен пользователей/паролей со специальными символами.