Guia de tecnologias

Guia completo do wget: instalar, usar e resolver "wget: command not found"

9 min read Tutoriais Atualizado 05 Oct 2025
Guia completo do wget no Windows e macOS
Guia completo do wget no Windows e macOS

Tela do Windows 10 com Prompt de Comando

Erro 'wget: command not found' mostrado no Prompt de Comando do Windows

O que é wget e para que serve

Wget é um utilitário de linha de comando para baixar arquivos da web sem interface gráfica. Ele suporta HTTP, HTTPS e FTP e é útil para:

  • Baixar arquivos simples (como um PDF ou robots.txt).
  • Fazer downloads recursivos para criar uma cópia local de páginas e ativos.
  • Recriar um site para testes off-line (mirror).
  • Automatizar transferências em scripts e CRON.

Definição em uma linha: wget é um cliente HTTP/FTP em modo texto para baixar e espelhar conteúdo web.

Important: usar wget para espelhar sites pode gerar carga no servidor. Sempre respeite robots.txt e limite a taxa de download.

Variantes de intenção (para SEO)

  • Guia wget no Windows
  • Solução wget command not found
  • Instalar wget no macOS
  • Exemplos de comandos wget
  • Alternativas ao wget (curl, PowerShell)

Como verificar se o wget está instalado

  1. Abra o Prompt de Comando (Windows) ou Terminal (macOS/Linux).
  2. Execute:
wget -V

Se estiver instalado, o comando retornará a versão do wget e informações de compilação. Se aparecer “wget: command not found” (ou similar), siga as instruções abaixo.

Instalação no Windows: métodos recomendados

Existem três métodos limpos para ter wget no Windows. Recomendo Chocolatey ou Scoop para facilidade de manutenção; a cópia manual do executável funciona, mas exige cuidado com PATH.

Opção A — Chocolatey (recomendado para administradores e desenvolvedores):

  1. Abra PowerShell como Administrador.
  2. Instale Chocolatey (se ainda não tiver):
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = 'Tls12'; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
  1. Instale wget:
choco install wget -y

Opção B — Scoop (bom para usuários que preferem instalar em diretório de usuário):

  1. Abra PowerShell (não precisa de admin para instalação no diretório do usuário).
  2. Instale Scoop:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser; iwr -useb get.scoop.sh | iex
  1. Instale wget:
scoop install wget

Opção C — Instalação manual (cópia do executável):

  1. Baixe um build do wget para Windows (por exemplo de repositórios confiáveis como GnuWin32 ou builds oficiais binários).
  2. Copie o executável wget.exe para C:\Windows\System32 ou para uma pasta qualquer.
  3. Se colocou em uma pasta fora de System32, adicione essa pasta à variável de ambiente PATH:
    • Menu Iniciar → Pesquisar “Editar variáveis de ambiente” → Variáveis de Ambiente → selecione PATH → Editar → Novo → cole o caminho da pasta.
  4. Abra um novo Prompt de Comando e execute wget -V.

Nota: colocar binários em System32 requer privilégio de administrador e não é a prática mais elegante. Prefira Chocolatey/Scoop.

Instalação no macOS

Opção A — Homebrew (mais comum):

  1. Instale Homebrew (se precisar):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  1. Instale wget:
brew install wget

Opção B — MacPorts:

sudo port install wget

Verificação:

wget -V

Instalação em distribuições Linux

Debian/Ubuntu:

sudo apt update
sudo apt install wget

Fedora/CentOS/RHEL:

sudo dnf install wget
# ou em sistemas mais antigos: sudo yum install wget

Solucionando “wget: command not found” no Windows (detalhado)

Causa comum: o executável não está instalado ou não está no PATH. Proceda assim:

  1. Confirme que o arquivo wget.exe existe onde você instalou.
  2. Abra PowerShell e rode where.exe wget — se retornar caminho, o executável está detectado.
  3. Se where não achar, adicione a pasta ao PATH (veja instruções acima) e abra uma nova janela do Prompt de Comando.
  4. Cheque permissões: certifique-se que o arquivo é executável e não está bloqueado pelo Windows Defender ou políticas de grupo.
  5. Alternativa imediata: use o binário em WSL (Windows Subsystem for Linux) se estiver instalado.

Uso básico e sintaxe

Sintaxe geral:

wget [OPÇÃO]... [URL]...
  • [OPÇÃO] define o comportamento (por exemplo -O para renomear, -r para recursivo).
  • [URL] é o endereço que você quer baixar.

Exemplos rápidos:

Baixar um arquivo simples:

wget https://example.com/robots.txt

Baixar para um diretório específico (-P):

wget -P /caminho/para/pasta https://example.com/sitemap.xml

Renomear o arquivo baixado (-O):

wget -O meu-arquivo.html https://example.com/file.html

Definir User-Agent:

wget --user-agent='Chrome' https://example.com/file.html

Emular um Googlebot (use com responsabilidade):

wget --user-agent='Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)' https://example.com/path

Obter robots.txt com cabeçalhos (-S) e só atualizar quando muda (-N):

wget -S https://example.com/robots.txt
wget -N https://example.com/robots.txt

Converter links para uso local:

wget --convert-links https://example.com/path

Espelhar uma única página para rodar localmente:

wget -E -H -k -K -p --convert-links https://example.com/path

Baixar URLs listadas em um arquivo (urls.txt):

# urls.txt contém uma URL por linha
wget -i urls.txt

Limitar velocidade e inserir espera entre requisições:

wget --wait=1 --limit-rate=10K https://example.com/arquivo

Explicação rápida das opções comuns:

  • –recursive (-r): baixar recursivamente seguindo links.
  • –page-requisites (-p): baixar os recursos que a página precisa (CSS, imagens, JS).
  • –adjust-extension (-E): ajustar extensões para .html quando necessário.
  • –span-hosts: seguir links para outros hosts quando necessário.
  • –wait=SEGS: esperar SEGS segundos entre requisições.
  • –limit-rate=VEL: limitar taxa de download (ex.: 10K, 200M).
  • –convert-links: converter links para versões locais.
  • –restrict-file-names=windows: adaptar nomes para compatibilidade no Windows.
  • –no-clobber: não sobrescrever arquivos existentes.
  • –domains=lista: limitar a lista de domínios permitidos.
  • –no-parent: não subir para diretórios pais.

Comandos avançados e boas práticas

Resumindo como agir com downloads maiores e espelhamento:

  • Sempre respeite robots.txt e a política do site. Consulte o administrador se tiver dúvidas.
  • Use –wait e –limit-rate para reduzir impacto no servidor.
  • Teste com –spider primeiro (modo simulação) antes de baixar tudo:
wget --spider -r https://example.com
  • Prefira baixar apenas os diretórios que você tem permissão.
  • Use –mirror (atalho para -r -N -l inf –no-remove-listing) com cuidado.

Exemplo seguro de espelhamento com limites:

wget --recursive --page-requisites --adjust-extension --span-hosts --wait=2 --limit-rate=50K --convert-links --restrict-file-names=windows --no-clobber --domains example.com --no-parent https://example.com

Isso pede 2 segundos entre requisições e limita a 50 KB/s para reduzir carga.

Arquivo de configuração ( ~/.wgetrc )

Você pode criar ~/.wgetrc (Unix/macOS) com opções padrão para o wget, por exemplo:

# ~/.wgetrc
wait = 1
random_wait = on
limit_rate = 50k
user_agent = Mozilla/5.0 (compatible; MyDownloader/1.0)

No Windows, você pode usar _wgetrc no diretório de instalação ou em %USERPROFILE%.

Alternativas e quando usar cada uma

  • curl: ideal para transferências simples, scripts REST e quando você precisa de mais controle sobre cabeçalhos e corpo. curl tem uma sintaxe diferente; prefira curl para upload e APIs.
  • PowerShell Invoke-WebRequest/Invoke-RestMethod: boa opção nativa no Windows para downloads e integração com scripts PowerShell.
  • WSL (Windows Subsystem for Linux): se você precisa de um ambiente Linux completo, instale o wget dentro do WSL (Ubuntu/Alpine/etc.).

Quando wget falha ou não é indicado:

  • Para chamadas REST complexas ou uploads multipart use curl.
  • Para automação em PowerShell use Invoke-WebRequest para melhor integração com objetos .NET.

Mini playbook: espelhar um site de forma responsável

  1. Verifique permissões e política do site (robots.txt, termos de uso).
  2. Faça um teste com –spider para ver o que seria baixado.
  3. Aplique limites (–wait, –limit-rate).
  4. Execute com opções de log para revisar o que foi baixado.
  5. Mantenha backups e não compartilhe conteúdo protegido sem autorização.

Exemplo de comando final:

wget --mirror --page-requisites --adjust-extension --convert-links --wait=2 --limit-rate=50K --domains example.com --no-parent -E -H -k -K https://example.com

Checklist por função

Desenvolvedor:

  • Verificar versão do wget.
  • Testar –spider antes do download.
  • Usar –no-clobber para evitar sobrescrita.

Sysadmin:

  • Usar Chocolatey/Scoop para manter o wget atualizado.
  • Bloquear downloads indesejados por política de rede quando necessário.

SEO / Auditoria:

  • Baixar apenas páginas públicas e respeitar robots.
  • Usar –user-agent apropriado e documentar atividade de crawling.

Testes e critérios de aceitação

  • Comando wget -V deve retornar a versão instalada.
  • wget --spider -r https://example.com deve terminar sem erro e listar URLs.
  • Ao usar wget -O arquivo.html https://example.com/page, arquivo.html deve existir e conter HTML válido.
  • Com wget -N robots.txt o arquivo só é substituído quando a versão remota é mais nova.

Segurança e privacidade

  • Não use user-agents falsos para mascarar identidade em situações onde isso viole políticas.
  • Evite baixar conteúdo protegido sem autorização.
  • Proteja credenciais (se usar FTP/HTTP auth, prefira métodos seguros e variáveis de ambiente).

Comandos úteis de recuperação e retomada

Retomar download interrompido:

wget -c https://example.com/arquivo-grande.zip

Tentar várias vezes com intervalo:

wget --tries=20 --waitretry=5 https://example.com/arquivo

Atalhos e cheatsheet rápido

  • Baixar arquivo: wget URL
  • Salvar com nome: wget -O nome.ext URL
  • Verificar apenas: wget --spider URL
  • Recursivo: wget -r URL
  • Limitar velocidade: wget --limit-rate=50K URL
  • Resumir: wget -c URL

Glossário (uma linha cada)

  • User-Agent: cadeia que identifica o cliente HTTP ao servidor.
  • Recursão: seguir links e baixar recursos referenciados.
  • Mirror: cópia local de um site para reprodução offline.
  • PATH: variável de ambiente que lista pastas pesquisadas para executáveis.

Perguntas frequentes

Por que o wget não é encontrado no Windows?

Porque não está instalado ou a pasta com wget.exe não faz parte da variável PATH. Instale via Chocolatey/Scoop ou adicione o executável ao PATH.

O que é curl?

cURL é outra ferramenta de linha de comando para transferir dados usando vários protocolos. É mais indicada para chamadas REST e manipulação de cabeçalhos.

Casos em que wget pode falhar ou não ser ideal

  • Sites que dependem de execução de JavaScript para carregar conteúdo (use um navegador headless como Puppeteer ou Playwright).
  • Sites com proteções anti-bot avançadas; nesses casos, use APIs oficiais ou peça permissão.
  • Para uploads complexos, curl ou bibliotecas específicas são mais adequadas.

Sugestão de pré-visualização social

OG title: Guia completo do wget — Instalação e exemplos práticos OG description: Solucione “wget: command not found”, instale no Windows/macOS/Linux e aprenda comandos essenciais, boas práticas e alternativas.

Anúncio curto (100–200 palavras)

Quer usar wget no Windows, macOS ou Linux, mas recebeu “wget: command not found”? Este guia prático mostra como instalar wget com Chocolatey, Scoop, Homebrew ou apt/dnf, como resolver problemas de PATH, e fornece exemplos reais: baixar arquivos, renomear saídas, limitar taxa, espelhar sites com segurança e emular User-Agent. Inclui alternativas (curl, PowerShell, WSL), um mini playbook para espelhamento responsável e uma cheatsheet para começar rapidamente. Siga as boas práticas para não sobrecarregar servidores e respeite robots.txt. Se precisar de um comando adaptado ao seu caso, descreva o objetivo e a plataforma que você usa.

Resumo final

  • Verifique se o wget está instalado com wget -V.
  • No Windows, prefira Chocolatey ou Scoop. No macOS, use Homebrew.
  • Use –wait e –limit-rate para não sobrecarregar servidores.
  • Para sites que dependem de JavaScript, prefira uma solução headless.

Se precisar, posso gerar o linha de comando exata para o seu caso (URL, domínio, limites e pasta de saída).

Autor
Edição

Materiais semelhantes

Instalar e usar Podman no Debian 11
Containers

Instalar e usar Podman no Debian 11

Apt‑pinning no Debian: guia prático
Administração de sistemas

Apt‑pinning no Debian: guia prático

Injete FSR 4 com OptiScaler em qualquer jogo
Tecnologia

Injete FSR 4 com OptiScaler em qualquer jogo

DansGuardian e Squid com NTLM no Debian Etch
Infraestrutura

DansGuardian e Squid com NTLM no Debian Etch

Corrigir erro de instalação no Android
Android

Corrigir erro de instalação no Android

KNetAttach: Pastas de Rede remota no KDE
KDE

KNetAttach: Pastas de Rede remota no KDE