Explorando o wget

o wget é um rápido e poderoso get em interface de console, ou seja, linha de comandos, que permite automatizar rotinas de downloads e centralizar múltiplos downloads de sites diferentes em um único comando.

[ Hits: 141.058 ]

Por: Ricardo Brito do Nascimento em 01/10/2007 | Blog: http://brito.blog.incolume.com.br


Explorando os recursos



Naturalmente o wget já é o mais rápido e eficiente que qualquer outro get desenvolvido para GUI (grafic user interface), e possui diversos atrativos para iniciar sua utilização.

E por padrão é bem simples de ser executado.

A sintaxe básica é:

wget [opção] [URL]

Exemplos:



$ wget http://ftp.gnu.org/pub/gnu/wget/wget-1.10.1.tar.gz

Neste exemplo, o download é exibido em barra de progresso, na tela do usuário.

$ wget mail.google.com
Connecting to www.google.com|64.233.169.147|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 16,131 (16K) [text/html]

100%[==================================>] 16,131 28.65K/s

09:52:31 (28.60 KB/s) - `ServiceLogin?service=mail&passive=true& rm=false&continue=http:%2F%2Fmail.google.com%2Fmail%2F?ui=html &zy=l<mpl=default<mplcache=2' saved [16131/16131]

$ wget -c http://ftp.gnu.org/pub/gnu/wget/wget-1.10.1.tar.gz

Aqui o download é continuado exatamente no ponto onde foi interrompido.

$ wget -b http://ftp.gnu.org/pub/gnu/wget/wget-1.10.1.tar.gz

Aqui o download é executado em background e gerado um arquivo de status com o nome "wget.log".

$ wget -r http://ftp.univie.ac.at/systems/linux/fedora/extras/6/i386/

Aqui o download é recursivo, ou seja, toda a estrutura abaixo da árvore.

$ wget -r -nd http://ftp.univie.ac.at/systems/linux/fedora/extras/6/i386/

Não cria a hierarquia de diretórios quando é recebida recursivamente.

$ wget -rnd http://ftp.univie.ac.at/systems/linux/fedora/extras/6/i386/

O mesmo exemplo acima em outra sintaxe.

$ wget -nH --cut-dirs=1 ftp.xemacs.org/pub/xemacs

Veja no exemplo abaixo como funciona esta opção.

No options -> ftp.xemacs.org/pub/xemacs/
  • -nH -> pub/xemacs/
  • -nH --cut-dirs=1 -> xemacs/
  • -nH --cut-dirs=2 -> .
  • --cut-dirs=1 -> ftp.xemacs.org/xemacs/

$ wget --http-user=brito --http-passwd=123456 http://10.0.0.1/privado/lista.pdf

Se houver necessidade de autenticação o wget tem suporte, podendo ser usado http e ftp, com a mesma sintaxe.

$ wget --progress=dot http://ftp.univie.ac.at/systems/linux/fedora/extras/6/i386/

$ wget -c --progress=bar http://ftp.univie.ac.at/systems/linux/fedora/extras/6/i386/


Aqui pode-se definir como será o indicador da barra de progresso do download, pontos (dot) ou barra (bar).

Podemos também associar comandos em shell script para termos um melhor resultado.

$ cat /tmp/download |while read a; do wget -b $a; done

Esta forma gera-se vários arquivos wget.log com as informações dos downloads.

$ cat /tmp/download | xargs wget -b

Desta forma gera apenas 1 arquivos wget.log com as informações dos downloads.

$ wget http://ftp.univie.ac.at/systems/linux/fedora/extras/6/i386/

$ sed -n 's/^<IMG SRC.*<A/<A/;/.tgz/p' index.html | grep beryl | tee lista

$ wget -i lista -F -B http://ftp.univie.ac.at/systems/linux/fedora/extras/6/i386/


Também pode-se associar as funcionalidades do get com o bookmarks de teu firefox.

Procure e coloque os arquivos a serem baixados no favorito em teu firefox e no nome do link coloque algo que facilite a busca.

Ex:

nome: pentaho;
location: http://ufpr.dl.sourceforge.net/sourceforge/pentaho/Pentaho_Artigo_Tecnico_1_6.pdf

nome: pentaho1;
location: http://ufpr.dl.sourceforge.net/sourceforge/ajax/Pentaho_Artigo_Tecnico_1_6.pdf

nome: pentaho2;
location: http://ufpr.dl.sourceforge.net/sourceforge/ajax/Pentaho_Artigo_Tecnico_1_6.pdf

Após gravados os links no favorito, execute:

$ grep -i pentaho ~/.mozilla/firefox/<dir>.default/bookmarks.html > lista2

$ wget -i lista2 -F lista2


Referências:
Página anterior    

Páginas do artigo
   1. O que é o wget
   2. Instalação do wget
   3. Explorando os recursos
Outros artigos deste autor

Gerenciando certificados A1 fornecidos pelo ICB-Brasil no navegador Chrome sobre Linux

Formatando exibição de datas no Linux

Configurando proxy no shell

Conexão com chaves assimétricas sem uso de senha em servidor sshd

Comando sudo - instalação e configuração

Leitura recomendada

Atualizando o navegador Firefox para a versão 4.0

GNU Octave: Alternativa ao uso do MATLAB

Como criar uma distribuição GNU/Linux com o SUSE Studio

TitansELsetup, configurador automatizado para Red Hat Like

Desvendando o editor Vim

  
Comentários
[1] Comentário enviado por tenchi em 02/10/2007 - 18:03h

Muito bom. O linux precisa muito de um bom gerenciador de downloads. EU utilizo o wget há um bom tempo, e não conhecia todas estas funções.
Mas um programa equivalente ao flashget livre seria uma das melhores coisas que poderiam aparecer para o Linux, pois o kget, gwget, d4x são bons, mas não chegam aos pés do 'primo para windows'.

Faavoritos...

[2] Comentário enviado por tuxSoares em 03/10/2007 - 00:29h

Legal vc explorar esse assunto.
Eu faço manutenção em servidores linux, 99% das vezes isso é feito via linha de comando, no meu caso o wget me salva toda hora quando preciso fazer algum download.
Parabéns!

[3] Comentário enviado por aprendiz_ce em 03/10/2007 - 19:08h

Para fazer download de arquivos, de um servidor de ftp, aonde o mesmo requer autentição, quais os parametros que devo utilizar?

Quais são os parametros que devo utilizar para se fazer downloads a partir de um servidor de FTP, aonde o mesmo requer autenticação?

Obrigado e parabéns pelo artigo.

[4] Comentário enviado por qxada07 em 03/05/2009 - 20:49h

Show de bola.... Já teve algumas vezes que precosei continuar o download de onde tinha parado......... 1000 grau.... Parabéns!!!!!

[5] Comentário enviado por mfs em 08/04/2010 - 21:30h

O wget supera todos os gerenciadores de downloads, o modo recursivo é uma mão na roda.
Uso sempre que quero baixar vários arquivos de uma FTP sem ter que baixa-los manualmente um por um.

[6] Comentário enviado por heraldoaraujo em 25/07/2011 - 16:21h

muito bom o artigo o wget um comando poderoso

[7] Comentário enviado por ramzagyn em 21/03/2012 - 10:35h

"Se a rede dispõe de proxy deve-se passar os parâmetros do proxy para o S.O."

Poxa, o principal é que configurar você não explicou...

Quem tem proxy na rede sabe muito bem que tem que ser informado isso...


[8] Comentário enviado por jarlisson em 23/07/2012 - 05:38h

valeu, nao sabia dessa flexibilidade do wget!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts