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: 133.099 ]

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

Clonagem de Hardware Hotline em Software Livre

Configurando Subversion

Formatando exibição de datas no Linux

Configurando proxy no shell

Vim com corretor ortográfico em pt_BR/es_ES/en_US

Leitura recomendada

manDVD - Produza DVD-vídeo rápido e fácil

LTSP - Linux Terminal Service

Bacula + Webacula + Bacula-web + bat no CentOS 6.3

Como converter CentOS 5 em Fedora 11

Planejando a migração de aplicações comerciais para o Linux/GNU

  
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
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts