Утилита wget в Linux

Для для выполнения закачек из Интернет по протоколам HTTP или FTP в системах Linux существует специализированная утилита — wget. Она управляется из командной оболочки, имеет простой синтаксис, а также богатый функционал, позволяющий гибко выполнять закачки в самых различных ситуациях. В подавляющем большинстве дистрибутивов Linux wget изначально предустановлена в системе.

Особенности wget

Утилита wget обладает рядом особенностей, делающих её самым эффективным и популярным инструментом для организации загрузок, в особенности среди системных администраторов:

  • утилита является стандартным инструментом для дистрибутивов на базе Не нужно предварительно ничего устанавливать, настраивать или компилировать (если, конечно не нужно использовать самую актуальную версию wget), достаточно просто начать использование;
  • wget поддерживает работу в фоновом режиме;
  • утилита самостоятельно контролирует соединения и поэтому способна осуществлять докачку при потере соединений или плохой связи;
  • поддержка рекурсивного режима работы wget позволяет автоматически выполнять закачки из множества ресурсов, например, закачивая несколько HTML-страниц или поддиректорий с FTP-сервера.

Утилита wget обладает очень богатым функционалом, который полностью описан на официальных страницах технической документации, доступной по команде man wget. Также можно воспользоваться опцией —help для получения списка поддерживаемых ключей и их описания. В большинстве случаев опция —help предоставляет описание на языке, соответствующем текущей локализации системы.

wget в примерах

Как уже отмечалось выше, wget имеет довольно простой (наряду с таким богатым функционалом) синтаксис. В самых распространённых случаях для wget указывается один единственный параметр — ссылка (URL) на ресурс (файл, картинка, HTML-страница, каталог FTP-сервера и т.д.) для закачки:

$ wget https://www.drupal.org/download-latest/tar.gz

Если вы получите ошибку -bash: wget: команда не найдена, то необходимо установить wget

apt-get install wget

Или

yum install wget

И снова запустите команду

$ wget https://www.drupal.org/download-latest/tar.gz

В данном случае wget скачала архив c CMS Drupal с официального сайта разработчиков. Как видно, запрос был автоматически перенаправлен к FTP-ресурсу, с которого потом и началась закачка. Утилита в процессе своей работы наглядно выводит всю информацию о соединении и закачке: протокол, скорость, объём, прогресс, время и т. д. По-умолчанию закачки сохраняются в текущем каталоге.

Работа с прокси-сервером

Для того, чтобы задействовать подключение через прокси-сервер, можно просто использовать для этой цели специальные переменные окружения, а затем вызвать команду wget – она автоматически будет использовать сделанные настройки для прокси, как для HTTP, так и для FTP:

$ export http_proxy=someproxy.net:8080

Использование рекурсивной закачки

Чтобы заставить wget автоматически переходить по ссылкам и скачивать соответствующие ресурсы, нужно воспользоваться ключом -r. Также с помощью ключа -l можно указать, до какой глубины спускаться по ссылкам:

$ wget -r -l 0 -np http://my.home-site.ru/articles

В данном случае для ключа -l указано значение 0 — бесконечная глубина ссылок. Дополнительный ключ -np указывает wget, что в ходе рекурсивного исполнения нельзя подниматься выше указанного уровня (директории), т. е. в данном случае выше articles.

Режим докачки

Докачивание файлов очень полезно при некачественном или низкоскоростном соединении. Когда необходимо продолжить закачку без потери прогресса после обрывов подключений или когда из-за низкой скорости не хватает времени завершить закачку за один раз. В таких случаях нужно использовать для wget режим докачки и для этого служит ключ -c. Например:

$ wget -c -t 0  https://www.drupal.org/download-latest/tar.gz

Ключ -t, используемый в данном примере позволяет задавать количество попыток. (0 — бесконечное число попыток) повторного соединения при обрывах. На самом деле, ключи -t и -c разумно использовать всегда.

Фоновый режим

Закачку с помощью утилиты wget можно (а часто даже нужно) запускать в фоновом режиме. Для этого предназначен ключ -b:

$ wget -b -c -t 0 https://www.drupal.org/download-latest/tar.gz

Работа продолжается в фоновом режиме, pid 22121

Выходные данные будут записаны в «wget-log».

При этом командная оболочка освободится для других задач. А вывод, который помещается в файл wget-log (текущего каталога) можно отслеживать командой tail -f wgetlog.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

ИТ Проффи

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Adblock detector