How to specify the download location with wget?
![]()
So you need to add -P /tmp/cron_test/ (short form) or —directory-prefix=/tmp/cron_test/ (long form) to your command. Also note that if the directory does not exist it will get created.
![]()
-O is the option to specify the path of the file you want to download to:
-P is prefix where it will download the file in the directory:
![]()
Make sure you have the URL correct for whatever you are downloading. First of all, URLs with characters like ? and such cannot be parsed and resolved. This will confuse the cmd line and accept any characters that aren’t resolved into the source URL name as the file name you are downloading into.
will download into a file named, ?source=typ_redirect .
As you can see, knowing a thing or two about URLs helps to understand wget .
I am booting from a hirens disk and only had Linux 2.6.1 as a resource (import os is unavailable). The correct syntax that solved my problem downloading an ISO onto the physical hard drive was:
Ubuntu. Использование команды Wget
В этой статье будет рассмотрен процесс использования консольной утилиты wget с наиболее распространенными опциями.
Что такое Wget
Wget — консольная программа для загрузки файлов из интернета, позволяющая скачивать файлы по протоколам HTTP, HTTPS и FTP.
Большое количество опций этой утилиты позволяет скачивать несколько файлов одновременно, возобновлять загрузки, ограничивать скорость скачивания, загружать файлы в фоновом режиме, делать оффлайновое зеркало страниц какого-либо сайта и многое другое.
Установка Wget
В большинстве дистрибутивов Linux пакет wget предустановлен по умолчанию.
Но если wget отсутствует в системе, то его можно загрузить при помощи менеджера пакетов.
Установка Wget в Ubuntu и Debian
Установка Wget в CentOS и Fedora
Синтаксис команд для Wget
Перед началом использования консольной утилиты wget стоит ознакомиться с используемым ей форматом команд.
В общем случае синтаксис команд для wget выглядит так:
где «options» — дополнительные опции, а «url» — ссылка на файл или директорию, которую вы хотите скачать.
Как скачать файл при помощи Wget
Простейший вариант использования wget — скачивание файла в текущую директорию без всяких опций.
В качестве примера рассмотрим команду для скачивания архива с ядром Linux:
При ее использовании wget определяет сопоставляет домен с IP-адресом сервера, подключается к этому серверу и начинает загрузку данных.
В процессе загрузки в консоли будет отображаться строка состояния с именем файла и его размером, скоростью скачивания и примерным подсчетом времени до окончания загрузки. После окончания загрузки скачанный файл можно будет найти в той директории, которая была активна на момент ввода команды.
Чтобы не выводить всю эту информацию в консоль можно запустить wget с опцией -q:
А если файл с таким именем уже существует, то wget сохранит его копию, добавив после оригинального названия цифровой номер.
Как сохранить скачиваемый файл под другим именем
Для того, чтобы автоматически сохранить скачиваемый файл под другим названием можно воспользоваться опцией -O, указав после нее желаемое имя файла:
В данном примере с GitHub скачивается архив с движком Hugo (master.zip) и сохраняется на компьютере под названием latest-hugo.zip
Как скачать файл в определенную директорию
По умолчанию wget сохраняет скачиваемый файл в текущую активную директорию. Чтобы сохранить файл по другому пути можно воспользоваться опцией -P, указав после нее место для сохранения:
В данном примере файл с образом дистрибутива CentOS 7 будет скачан в директорию /mnt/iso/.
Как ограничить скорость скачивания
Для ограничения скорости загрузки можно воспользоваться опцией —limit-rate (обратите внимание: два дефиса в начале), указав предел допустимой скорости в байтах, килобайтах (суффикс k) или мегабайтах (суффикс m):
В вышеприведенных примерах скорость загрузки будет ограничена до 1 мегабайта или 1024 килобайт в секунду.
Как возобновить загрузку
Если при помощи wget загружался крупный файл, но соединение прервалось, то можно продолжить его загрузку при помощи опции -c вместо того, чтобы начинать загружать с самого начала:
Однако, при этом необходимо чтобы сам сервер поддерживал возможность возобновления загрузки. В ином случае wget начнет загрузку с начала и перезапишет имеющийся файл.
Как скачивать файлы в фоне
Чтобы загрузить файл в фоновом режиме можно воспользоваться опцией -b:
Это полезно если вы загружаете какой-то крупный файл и во время его загрузки хотите продолжать пользоваться консолью.
Как изменить User-Agent при скачивании
В некоторых случаях удаленный сервер может блокировать доступ для нестандартных User-Agent, используемых ботами или утилитами вроде wget.
Как быть в таких ситуациях? Эмулировать User-Agent какого-нибудь распространенного браузера при помощи опции -U:
В примере выше wget будет скачивать содержимое сайта http://wget-forbidden.com/, эмулируя браузер Firefox 60.
Как скачивать сразу несколько файлов
Для одновременной загрузки нескольких файлов можно воспользоваться опцией -i и задать путь к текстовому файлу со списку URL для загрузки:
Содержимое файла linux-distros.txt может выглядеть следующим образом:
Каждый URL в списке должен начинаться с новой строки.
Как скачивать файлы по FTP
Для скачивания файлов с требующего авторизации FTP-сервера нужно указать свой логин и пароль:
Как скачать сайт при помощи Wget
Для создания зеркала веб-сайта можно использовать wget с опцией -m. При этом будет создана локальная копия вебсайта со всем его содержимым, включая картинки:
Если скачиваемый веб-сайт планируется использовать для локального просмотра, то стоит добавить несколько дополнительных аргументов:
Опция -k нужна для того, чтобы wget автоматически сконвертировал все гиперссылки в загружаемых HTML-файлах для их работоспособности оффлайн. А опция -p включает в список объектов для скачивания необходимые для правильного отображения сайта ресурсы, вроде скриптов (JavaScript) и таблиц стилей CSS.
Как пропустить проверку SSL-сертификата
Если нужно скачать файл по HTTPS-протоколу с ресурса, обладающего некорректным SSL-сертификатом (распространенный пример — владелец поставил вручную бесплатный сертификат от Let’s Encrypt и забыл продлить его спустя три месяца), то можно воспользоваться опцией —no-check-certificate (опять-таки, два дефиса в начале):
Заключение
Несмотря на кажущуюся незамысловатость, wget — довольно навороченная утилита.
В данной статье были рассмотрены наиболее распространенные сценарии ее использования для скачивания нескольких файлов одновременно, возобновления сбойных загрузок и созданий локальных зеркал веб-сайтов.
Если этого недостаточно — можно ознакомиться с официальным руководством по Wget.
Как использовать команду Wget с примерами
Wget — это бесплатная утилита командной строки GNU, используемая для загрузки файлов из Интернета. Она извлекает файлы с использованием протоколов HTTP, HTTPS и FTP.
Если во время загрузки возникает проблема с сетью, это полезное программное обеспечение может возобновить получение файлов, не начиная с нуля.
Другим важным аспектом является возможность рекурсивной загрузки, с помощью которой она может копировать веб-сайты переходя по ссылкам и структуре каталогов и создавая локальные версии веб-страниц.
Команда wget очень гибкая и может использоваться в терминалах, скриптах и cron-задачах. Во время загрузки пользователю не обязательно быть активным или авторизованным. Поскольку wget может работать независимо в фоновом режиме.
Как проверить, установлен ли wget?
Скорее всего, пакет wget уже есть в вашей системе, так как сейчас он предустановлен в большинстве дистрибутивов Linux.
Чтобы проверить, откройте окно терминала и введите:
Если у вас установлен wget, вы увидите сообщение, что команде wget не хватает URL-адреса, как показано на изображении ниже:

Если в выводе отображается команда wget command not found , вам необходимо загрузить и установить инструмент вручную. Ниже вы найдете инструкции по установке для Ubuntu / Debian, CentOS и Windows.
Как установить wget на Ubuntu / Debian?
Чтобы установить wget в системах Ubuntu или Debian, используйте команду:
Как установить wget на CentOS / Fedora?
Чтобы установить wget на CentOS или Fedora, введите следующую команду:
Синтаксис wget
Синтаксис wget имеет следующий шаблон:
Каждая [option] имеет свою длинную и короткую форму, которые удобно заменять. Этот атрибут указывает, что делать со следующим URL-адресом.
[URL] — это адрес файла или каталога, который вы хотите загрузить.
Список основных команд wget
- -V(—version) — выводит версию программы
- -h (—help) — выводит справку
- -b(—background) — работать в фоновом режиме
- -o
(—out-file) — указывает лог файл - -d(—debug) — включает режим отладки
- -v (—verbose) — выводит максимум информации о работе утилиты
- -q (—quiet) — выводит минимум информации о работе
- -i<file> (—input-file) — читает URL из файла
- —force-html — читает файл указанный в предыдущем параметре как html
- -t (—tries) — количество попыток подключения к серверу
- -O <file>(—output-document) — файл в который будут сохранены полученные данные
- -с (—continue) — продолжает ранее прерванную загрузку
- -S (—server-response) — выводит ответ сервера
- —spider — проверяет работоспособность URL
- -T <time> (—timeout) — таймаут подключения к серверу
- —limit-rate — ограничивает скорость загрузки
- -w (—wait) — интервал между запросами
- -Q(—quota) — максимальный размер загрузки
- -4 (—inet4only) — использовать протокол ipv4
- -6 (—inet6only) — использовать протокол ipv6
- -U (—user-agent) — строка USER AGENT отправляемая серверу
- -r (—recursive) — рекурсивная работа утилиты
- -l (—level) — глубина при рекурсивном сканировании
- -k(—convert-links) — конвертирует ссылки в локальные при загрузке страниц
- -P (—directory-prefix) — каталог, в который будут загружаться файлы
- -m(—mirror) — скачивает сайт на локальную машину
- -p(—page-requisites) — во время загрузки сайта скачивает все необходимые ресурсы
Примеры команд wget
Как скачать файл из Интернета
Чтобы загрузить файл из Интернета, используйте пример:
Как скачать файл и сохранить с другим названием
Параметр -O устанавливает имя выходного файла. Если файл называется terraform_0.12.2_linux_amd64.zip , и вы хотите сохранить его непосредственно в terraform.zip , вы должны использовать такую команду:
Как сохранить файл в конкретный каталог
По умолчанию wget загружает файл в каталог, в котором находится пользователь. Чтобы сохранить файл в другом месте, добавьте параметр –P :
Как установить скорость загрузки
Вы можете установить скорость загрузки при скачивании большого файла, чтобы он не использовал всю доступную пропускную способность. Скорость загрузки определяется в килобайтах (k) и мегабайтах (m). Используйте команду:
Как продолжить загрузку после прерывания
Вместо того, чтобы начинать с нуля, wget может возобновить загрузку с того места, где она была остановлена до прерывания. Это полезная функция, если при загрузке файла происходит потеря соединения.
Как скачать несколько файлов
- Сначала создайте и откройте файл с именем MultipleDownloads.txt (или другим именем по вашему выбору) с помощью текстового редактора.:
- В редакторе добавьте URL-адреса, которые вы хотите загрузить, по одному в каждой строке.
- Сохраните и выйдите из файла.
- Выполните следующую команду wget в окне терминала:
Как загрузить зеркало веб-страницы
С помощью wget вы можете загрузить весь веб-сайт из Интернета, используя параметр –m . Он предлагает wget создать зеркало указанной веб-страницы. Основная команда для этого:
Как скачать через FTP
Чтобы загрузить через FTP, введите имя пользователя и пароль FTP-сервера, а затем ftp-адрес:
Как скачать в фоновом режиме
Вы можете использовать функцию загрузки в фоновом режиме при работе с большими файлами:
Как увеличить число попыток повтора
По умолчанию количество повторных попыток установлено на 20.
Вы также можете установить число на бесконечность со значениями 0 или inf, как в следующем примере:
Как пропустить проверку сертификата
По умолчанию wget проверяет, есть ли у сервера действительный сертификат SSL / TLS. Если он не идентифицирует подлинный сертификат, он отказывается от загрузки.
Параметр —no-check-certificate используется, чтобы отменить проверку сертификата. Однако используйте его только в том случае, если вы уверены в надежности веб-сайта или не беспокоитесь о проблемах безопасности, которые он может вызвать.
Как изменить User Agent
При загрузке веб-страницы wget по сути эмулирует браузер. В некоторых случаях в выводе может быть указано, что у вас нет разрешения на доступ к серверу или что соединение запрещено. Это может быть связано с тем, что веб-сайт блокирует клиентские браузеры с определенным «User-Agent».
«User-Agent» — это поле заголовка, которое браузер отправляет на сервер, к которому он хочет получить доступ. Поэтому для загрузки с сервера, который отказывается подключаться, попробуйте его изменить.
Найдите базу данных всех пользовательских агентов в сети, найдите тот, который вам нужен, и выполните команду:
alt=»smsc banner 728×90″ /> alt=»smsc banner 120×600″ />
alt=»kwork banner 728×90″ /> alt=»kwork banner 120×600″ />
alt=»skillbox banner 728×90″ /> alt=»skillbox banner 120×600″ />
Насколько публикация полезна?
Нажмите на звезду, чтобы оценить!
Средняя оценка 5 / 5. Количество оценок: 1
Оценок пока нет. Поставьте оценку первым.
Похожие посты
Разработка сайтов для бизнеса
Если у вас есть вопрос, на который вы не знаете ответ — напишите нам, мы поможем разобраться. Мы всегда рады интересным знакомствам и новым проектам.
Where on my computer did Wget download this image?
I am using Windows XP. I just downloaded wget and put it into my C:\Windows folder.
I then ran this command line (trying to download an image from a website):
A black DOS-like window appeared for a few seconds showing me that some kind of process was taking place. I assume it was the process of downloading. I could see the growing percentage numbers shown. Once it reached 100%, the black window vanished and now I can’t find where the downloaded image is. I looked all over the C:\Windows folder, but I didn’t find lang2.JPG . Where is it supposed to be?
I have discovered that a folder is created, and the file is being downloaded, but then it is removed «since it should be rejected». Why it should be rejected I don’t know. Do you think there is a way of «catching» it on my computer before it is rejected? And why is it still being downloaded first if it’s to be rejected?