[Solved] wget is not recognized as an internal or external command

You’re trying to use the command-line tool wget to download a web page, image, video, etc., but you’re getting an error saying that wget is not recognized as an internal or external command, operable program, or batch file.
- You don’t have wget installed.
- The PATH environment variable is not set up properly and wget is not in it.
- There’s a typo in the command or file name that you’re trying to download.
Here are some solutions to the wget is not recognized error:
Table of Contents
1. Installing wget (if you don’t have it)
Wget is available for most operating systems, but if it isn’t installed by default on yours, you’ll need to install it yourself.
Here’s how to install wget on Windows 10:
- Download the latest Windows version of wget here. Download the setup executable file.
- Once downloaded, open File Explorer and double-click on the setup executable file.
- Once the installation is finished, press Windows + R shortcut key and type cmd.
- Verify that wget is working by running:
Wget on Mac
Here’s how to install wget on a Mac:
Download and install wget using Homebrew. If you don’t have Homebrew installed, follow our doc here.
Verify wget is installed and working by downloading wget using wget. Nice!
We don’t recommend installing wget using the source code. There are dependencies you have to install. If you don’t install the version of wget with the correct dependencies, the installation may fail.
2. Configuring your PATH variable (If you don’t have it)
To do anything useful on a computer, programs need to be “accessible” and this is done through something called the PATH environment variable. To set up your path variable, you need to configure it.
wget не распознается как внутренняя или внешняя команда
Я работаю над программой для автоматического обновления моей игры по мере создания новых разработок и добавления новых патчей. Когда я запускаю обновление патча, он не распознает wget как внутреннюю или внешнюю команду. Игра:
Дополнительный код выше в программе обновления Updater:
5 ответов
wget — это сторонняя программа, которая не входит в комплект Windows, поэтому вам необходимо явно установить ее, чтобы использовать.
Вам нужно будет добавить путь к файлу wget.exe в переменную среды PATH , чтобы вызвать исполняемый файл, как в пакетном файле выше, без явного указания пути.
Вам просто нужно установить wget с https://anaconda.org/menpo/wget здесь. Я нашел свое решение, установив его.
Загрузите wget.exe здесь после загрузки, перейдите в командную строку, набрав «cmd» в меню поиска , откройте cmd type ‘path’, затем введите в командной строке, вы собираетесь переместить загруженный файл wget.exe в папку C: \ Windows \ System32. в случае успеха закройте и откройте командную строку и введите «wget -h», затем введите, вы должны увидеть разные доступные команды. Теперь вы можете использовать md wgetdown для создания каталога для ваших загрузок
Перейдите в папку C: \ Program Files (x86) \ GnuWin32 \ bin и проверьте имя файла .exe. Для меня это был sid.exe, поэтому я использую sid вместо команды Wget
Это просто означает, что wget не установлен на вашем компьютере с Windows, но не был добавлен в путь к среде Windows.
Если у вас не установлен wget, загрузите его с здесь (32-разрядная версия) и здесь (64-разрядная версия).
Извлеките файлы в папку, например, C: \ wget, а затем добавьте папку в путь к среде Windows.
wget not recognized as internal or external command
I am working on a program to auto update my game as I make new developments and add new patches. When I go to run the patch update it doesn’t recognize wget as a internal or external command. Game:
More code above in the updater Updater:
![]()
9 Answers 9
wget is a third-party program that doesn’t come bundled with Windows, so you need to explicitly install it in order to use it.
You will need to add the path of the wget.exe file to your PATH environment variable in order to call the executable as in the batch file above without explicitly specifying the path.
![]()
I followed this tutorial-> (https://builtvisible.com/download-your-website-with-wget/) and it worked for me. Still, I will give an overview of that, credit: Richard Baxter
for 64bit version download wget from here
move your wget.exe to the Windows directory, which is generally c:\Windows\System32 .if you don’t know then you can find that either using the $PATH command or by opening your cmd as an administrator and in which path it will open that will be your Windows directory. like this one ->

2.1. Check that you have copied that in a proper place or not, to do that restart your cmd/terminal then type wget -h . if it gives some output related to some commands and their utilities(basically what a help command does) then you are good to go.
- If you pass the above check, then go to your c:/ directory using cd .. , then make a directory called wgetdown using md wgetdown . Now you are all set. use get how ever you want.

Wget не является внутренней или внешней командой что делать
GNU Wget
GNU Wget — это свободная неинтерактивная утилита для скачивания файлов по HTTP, HTTPS, FTP и FTPS (и только), обладающая самым базовым функционалом загрузки одиночных файлов и рекурсивной загрузки сайтов (HTTP) и директорий (FTP).
Где взять.
Под GNU — уже стоит. Под FreeBSD — есть в портах. Под [Mac] OS X — собрать ванильный.
Под Windows есть варианты: Cygwin | GNUWin32 (учитывайте зависимости) | Wget + OpenSSL by GetGnuWin32 | by TumaGonx Zakkum (он же osspack32 и The Moluccas | by Jernej Simoncc (32 и 64 бит отдельные пакеты).
Q: Можно ли простым перебором загрузить страницы (допустим) с первой по сотую, если их адреса:
http://example.org/index?page=1
http://example.org/index?page=2
.
http://example.org/index?page=100
A: Вэ-гет не умеет делать инкрементальный перебор, поскольку это умеет делать любая командная оболочка. На Баше это делается так:
$ wget -E "http://example.org/index?page=" <1..100>
Еще раз отметьте, <1..100>— это синтаксическая конструкция Баша, а не Вэ-гета. Эквивалентной этой будет команда:
$ for i in <1..100>; do wget -E "http://example.org/index?page=$i"; done
Или для cmd.exe:
for /l %i in (1,1,100) do wget -E "http://example.org/index?page=%i"
Q: А как собственно сайт целиком-то загрузить?
A: $ wget -mpEk "http://example.org"
Это, наверное, самый ходовой набор ключей, но вам, может быть, более подойдут другие. Что значит каждый — легко узнать в мане.
Q: Я хочу загрузить с сайта, требующего авторизации. Что делать?
A: Проще всего кинуть куда-нибудь файл с нужными (но лишние не помешают) куками в нетскэйповском формате, затем воспользоваться ключом —load-cookies .
$ wget —load-cookies cookies.txt бла-бла # файл cookies.txt в текущей директории
У Файрфокса куки в требуемом виде можно получить, воспользовавшись расширениями «Export Cookies» либо «Cookie.txt»; у Хрома — «Cookie.txt export»
Q: Не-ASCII символы сохраняются в именах файлов как %D0%A5%D1%83%D0%B9 (или того хуже), хотя локаль юникодная.
A: Укажите ключ —restrict-file-names=nocontrol,unix или —restrict-file-names=nocontrol,windows соответственно.
Если у вас Windows и локаль не юникодная — используйте вариант от Alex_Piggy с ключом —local-filesystem-encoding=ENCODING , где ENCODING — имя кодировки локали в терминах iconv . Текущую локаль cmd.exe можно проверить при помощи команды chcp . Для русской кириллицы в Windows обычно используется CP866 .
Q: Известно, что можно приказать Вэ-гету обновить ранее загруженный файл, если на сервере новее или иного размера (ключ —timestamping , он же -N ). Можно приказать учитывать только дату, но не размер ( —timestamping —ignore-length ). А можно ли учитывать только размер, но не дату?
A: При помощи одного только Wget’а — нет. Возможна обработка получаемых заголовков файла при помощи средств командной оболочки. Пример для cmd.exe .
Q: Можно ли приказать Вэ-гету докачать файл, но только если он не изменился.
A: Нет, нельзя. Сочетание ключей -cN ( —continue —timestamping ), как можно было бы предположить, нужного эффекта не даст — «докачает» даже если файл изменился — получите в итоге мусор.
Q: Можно ли при рекурсивной загрузке ограничится только ссылками, содержащими параметр lang=ru , т.е. грузить:
http://example.org/index?lang=ru
http://example.org/page?id=1001&lang=ru
http://example.org/file?id=60&lang=ru&format=dvi
и не грузить:
http://example.org/index?lang=en
http://example.org/about?lang=fr
и т.д.
A: Для версий < 1.14 нет такой возможности.
Общий вид URI: <протокол>://<логин>:<пароль>@<хост>:<порт>/<путь>?<параметры>#<якорь> . Так вот ключи -I ( —include-directories ) и -X ( —exclude-directories ) относятся только к пути, но не к параметрам.
В версиях > 1.14 возможно при использовании ключей —accept-regex / —reject-regex . Пример: —reject-regex "lang=[^r][^u]"
Q: Можно ли средствами Вэ-гета ограничить перечень загружаемых файлов по дате модификации (новее чем, старше чем)?
A: Нет такой возможности.
Q: Можно ли при рекурсивной или множественной загрузке произвольно задать целевые пути и/или имена файлов на основе пути/имени по-умолчанию (применить транслитерацию, отбросить хвостовую часть) или хотя бы независимо (сгенерировать случайно или по счетчику)?
A: Нет.
Q: То — нельзя, это — невозможно. Почему все так плохо?
A: Потому что Вэ-гет на настоящий момент — базовая программа, предоставляющая только самый базовый функционал. Если вы уперлись в потолок ее возможностей, просто смените ее на другой инструмент. Из неинтерактивных свободных программ наиболее функциональными будут:
aria2c — для загрузки одиночных файлов по HTTP(S), FTP, бит-торренту;
httrack — для рекурсивной загрузки («зеркалирования») веб-сайтов;
lftp — для работы по FTP, FTPS, SFTP, FISH, а также с листингами, отдаваемыми по HTTP(S) (пример).
curl — для работы с одиночными файлам по HTTP(S), FTP(S) и многими другими протоколами на более низком уровне.
wput — клон wget для аплоада файлов на удаленные FTP(S) сервера.
axel — клон wget для многопоточной загрузки одиночных файлов по протоколам HTTP(S) и FTP(S). Порты для Windows: 2.4, 2.16.1
c:\Portable App\Total Commander\Utils\Wget>wget -O- "https://architizer.com/projects/villa-stardust/" | ugrep -Eo "https://architizer-prod.imgix.net/media/mediadata/uploads/[[:digit:]]+Daria_Scagliola-[[:digit:]]+.jpg" | sort -u | wget -i —
"ugrep" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Может здесь чего не так
Цитата:
| Самый прикол, что сейчас например база лежит 149 версии, а если взять MSI и распаковать — то там файл на месяц новее, версия 150. |
Зато в .никс-версии чистая база, безо всякого мусора, коим так богат MSI.
MSI, конечно, распаковать можно, но. там надо ещё и файл базы потом приводить в нужному виду (переименовывать) — у них там всё не по-человечески.
Цитата:
| Вот так можно скачать файл по маске: wget -rH -l1 -nH -nd -D download.2gis.com -A 2GISData*.orig.zip -e robots=off "http://info.2gis.ru/nizhniy-novgorod/products/download" |
Что-то какие-то непонятки получаются (на клиенте, про сервер — забыли):
download.tmp [ <=> ] 18,63K —.-KB/s in 0s
2021-03-11 19:02:14 (74,1 MB/s) — 'download.tmp' saved [19081]
Removing download.tmp since it should be rejected.
Цитата:
| "ugrep" не является внутренней или внешней |
если вы скачали нужную версию ugrep(32 или 64), то видимо что-то не так указали в переменной. Когда с переменной разберетесь не забудьте убрать 'sort -u' т.к. у вас, видимо, нет программы sort. Ссылок для _https://architizer.com/projects/villa-stardust/
будет 48 вместо 6 но это не критично.
wget -O- url | ugrep -Eo pattern | wget -i —
для url и pattern нужные значения у вас есть.
Цитата:
| Можно использовать xmllint из пакета libxml2 для извлечения ссылки из html кода. |
Хорошо, попробую. Нужен libxml2-2.7.8.win32.zip с указанного сайта, или что-то другое?
Цитата:
| Leon_Ko У меня этой командой качает 149 базу |
У меня — нет. По-видимому, произошло кеширование предыдущей попытки (на сервере?), и Wget считает, что файл уже скачан. Лог я приводил выше .
Добавлено:
Fenrizz
Скачал libxml2-2.7.8.win32.zip, распаковал в %path%, запускаю:
Цитата:
| Самый прикол, что сейчас например база лежит 149 версии, а если взять MSI и распаковать — то там файл на месяц новее, версия 150. |
Если посмотреть html код, то там видно две ссылки
<span <a href='https://download.2gis.com/arhives/2GISData_N_Novgorod-150.0.0.zip'
и
<div href="https://download.2gis.com/arhives/2GISData_N_Novgorod-149.orig.zip"
а, вот что — полез смотреть вручную — оказывается не все имена имеют цифры.JPG
_https://architizer-prod.imgix.net/media/mediadata/uploads/1591897900205Daria_Scagliola-4676v.jpg
вот такая хрень идет после файла, на котором остановилось скачивание и еще бывают вот такие имена
_https://architizer-prod.imgix.net/media/mediadata/uploads/1614634822452ButlerArmsden_Orinda_50S4574_copy.jpg
как дополнить регулярку, так чтобы все варианты прокатывали. цифрыВНУТРИбуквыцифры итд
подсмотрел справку [[:alnum:]] может проканает
не..не канает, опять заLOOPляется на файле, после которого идет с буквами после цифр