Команда wget в Linux

Linux 命令大全Полное руководство по командам Linux


Что такое команда wget?

wget — мощный неинтерактивный инструмент для загрузки из сети в системе Linux. Его название происходит от сочетания «World Wide Web» и «get». Он поддерживает загрузку файлов по протоколам HTTP, HTTPS и FTP, а также обладает практичными возможностями, такими как возобновляемая загрузка и рекурсивная загрузка.

В отличие от загрузок через браузер или команды curl, основные особенности wget:

  • Неинтерактивный режим: Может работать в фоновом режиме без вмешательства пользователя
  • Высокая стабильность: Может автоматически повторять попытки при нестабильности сети
  • Богатый функционал: Поддерживает множество сценариев загрузки и расширенные параметры

Базовый синтаксис wget

wget [选项] [URL]

Простейший пример загрузки

Пример

wget https://example.com/file.zip

Эта команда загружает файл с указанного URL в текущий каталог.


Подробное объяснение распространённых опций и параметров

Параметры управления загрузкой

Опция Описание Пример
-O <文件名> Указать имя сохраняемого файла wget -O myfile.zip https://example.com/file.zip
-P <目录> Указать каталог загрузки wget -P ~/downloads https://example.com/file.zip
-c Докачка wget -c https://example.com/bigfile.iso
-b Фоновая загрузка wget -b https://example.com/largefile.mp4

Параметры настройки подключения

Опция Описание Пример
--limit-rate=<速度> Загрузка с ограничением скорости wget --limit-rate=200k https://example.com/file.iso
-t <次数> Задать количество повторных попыток wget -t 5 https://example.com/unstable.file
--timeout=<秒> Установить тайм-аут wget --timeout=30 https://example.com/slow.file

Параметры рекурсивной загрузки

Опция Описание Пример
-r Рекурсивная загрузка wget -r https://example.com/directory/
-l <深度> Задать глубину рекурсии wget -r -l 2 https://example.com/
-np Не возвращаться в родительский каталог wget -r -np https://example.com/path/

Практические примеры и сценарии применения

Пример 1: Скачивание одного файла и его переименование

Пример

wget -O linux_distro.iso https://example.com/ubuntu-22.04.iso

Описание:

  • Скачайте образ Ubuntu 22.04 по указанному URL
  • Используйте-Oвозможность сохранить файл под пользовательским именемlinux_distro.iso

Пример 2: Скачивание больших файлов с ограничением скорости

Пример

wget --limit-rate=500k -c https://example.com/large_video.mp4

Описание:

  • --limit-rate=500kОграничьте скорость скачивания до 500KB/s
  • -cПоддерживает возобновляемые загрузки; можно продолжить загрузку после сетевого прерывания

Пример 3: Рекурсивное скачивание всего сайта

Пример

wget -r -l 5 --convert-links --wait=2 https://example-site.com

Описание:

  • -rВключить рекурсивное скачивание
  • -l 5Установите максимальную глубину рекурсии на 5 уровней
  • --convert-linksПреобразовать ссылки для локального просмотра
  • --wait=2Интервал в 2 секунды между загрузками для снижения нагрузки на сервер

Расширенные советы и меры предосторожности

1. Пакетная загрузка файлов

Создайте текстовый файл, содержащий несколько URLurls.txt, затем используйте:

Пример

wget -i urls.txt

2. Загрузка FTP-ресурсов

Пример

wget ftp://username:password@ftp.example.com/file.zip

Примечание: Пароль будет отображаться в истории команд. Рекомендуется использовать--ftp-userи--ftp-passwordопцию, чтобы задать его отдельно.

3. Решения распространённых проблем

Проблема 1: Ошибка сертификата

Пример

wget --no-check-certificate https://example.com

Проблема 2: Скачивание запрещено (403 Forbidden)

Пример

wget --user-agent="Mozilla/5.0" https://example.com

Визуализация: рабочий процесс wget


Практические упражнения

  1. Попробуйте скачать исходный код ядра Linux:

    wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.5.5.tar.xz
  2. Используйте функцию возобновления загрузки, чтобы скачать большой файл. После прерывания подключитесь снова и продолжите скачивание.

  3. Создайте текстовый файл, содержащий несколько URL-адресов изображений, и используйте функцию пакетной загрузки, чтобы загрузить все изображения.


Итог

wget — незаменимый инструмент для скачивания в системе Linux. Из этой статьи вы узнали:

  • Базовый синтаксис и распространённые параметры wget
  • Методы скачивания для различных практических сценариев применения
  • Продвинутые советы и решения проблем
  • Реализация рекурсивных загрузок и пакетных загрузок

Освоение команды wget значительно повысит вашу эффективность при работе с сетевыми ресурсами в среде Linux.

Linux 命令大全Полное руководство по командам Linux

Другие расширения