Команда wget в Linux

Программа wget — это весьма мощный и многофункциональный инструмент для загрузки файлов из Сети. Она может работать как с протоколами HTTP/HTTPS, так и с FTP/FTPS. Обычно данная утилита уже входит в состав дистрибутивов Linux, либо ее можно установить из стандартного репозитория любой системы.

Основные достоинства wget:

  • Утилита консольная и мы можем ее использовать прямо на сервере, чтобы скачивать файлы без участия локальной машины, к примеру сразу скачать и распаковать для установки CMS для сайта.
  • Имеется поддержка догрузки прерванных закачек.
  • Работает в фоновом режиме — можно запустить wget и выйти из терминала.
  • Есть возможность загрузки даже целых сайтов со всем содержимым.

Ознакомится с инструкцией о том, как скачать целый сайт можно в нашей статье: Wget — скачать сайт целиком

Синтаксис команды

Синтаксис и поддерживаемые ключи команды можно узнать, набрав команду wget --help

wget [КЛЮЧ]... [URL]...

Некоторые часто используемые ключи:

  • -b Перейти в фоновый режим после запуска.
  • -q Выключить сообщения Wget.
  • -v Включить подробные сообщения, со всеми доступными данными. По умолчанию включено.
  • -c continue Возобновление загрузки файла. Используется, если загрузка файла была прервана.
  • —progress=type Индикатор прогресса загрузки и его тип. Возможные значения: «dot» и «bar».
  • -Q [quota] Квота на размер загружаемых файлов. Указывается в байтах (по умолчанию), в килобайтах Кб (если в конце k) или в мегабайтах Мб (если в конце m).
  • -nd Не создавать структуру папок при рекурсивной загрузке. При указанном параметре, все файлы будут загружаться в одну папку. Если файл с данным именем уже существует, то он будет сохранен под именем ИмяФайла.n.
  • -x Противоположно параметру -nd — создавать структуру папок, начиная с главной страницы сервера.
    -P [prefix] Определяет начальную папку, в которой будет сохранена структура папок сайта (или просто файлы). По умолчанию этот параметр равен текущей папке.
  • -r Включить рекурсивную загрузку.
  • -l [depth] Максимальная глубина рекурсивной загрузки depth. По умолчанию ее значение равно 5.

Примеры использования wget

Ниже я приведу несколько примеров работы с утилитой.

Загрузка файла

Данная команда загрузит файл file.ext в текущую папку:

wget http://site.ru/file.ext
Wget в терминале

Загрузка файла в фоне

При загрузке в фоне вывод программы будет записан в Log-файл. Установить произвольный файл логгирования можно с помощью ключа -o ./log-file.txt.

wget -b http://site.ru/file.ext
Wget в терминале

Докачка файла

Чтобы возобновить прерванную загрузку используем ключ -c:

wget -c http://site.ru/file.ext
Wget в терминале

Загрузить список файлов

Wget позволяет загружать списки URL, сохраненные в текстовый файл, например, создадим текстовый файл ~/links.txt:

http://site.ru/link1.ext
http://site.ru/link2.ext
http://site.ru/link3.ext

Для того, чтобы скачать фсе файлы из этого списка укажем ключ -i:

wget i ~/links.txt
Wget в терминале

Скачать несколько файлов

Если необходимо скачать несколько файлов можно просто указать их через пробел:

wget https://wordpress.org/latest.tar.gz https://maddot.ru/uper_new.jpg
Wget в терминале

Сохранить файл с другим именем

Для настройки вывода используется ключ -O:

wget -O ~/my_file_name.ext http://site.ru/file.ext
Wget в терминале

Сохранить в другую папку

Для сохранения в произвольную папку используем ключ -P:

wget -P ~/dir/ http://site.ru/file.ext
Wget в терминале

Подменить User-agent

Да, мы можем представиться серверу браузером:

wget -U="Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/83.0" http://site.ru/file.ext
Wget в терминале

 

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

Есть, что добавить? Нет проблем! Напечатай комментарий и он будет опубликован после проверки.