Vamos aprender a usar o Wget praticando.
http://www.gnu.org/software/wget/wget.html

Outras páginas de consultas excelentes:
http://www.fg.med.br/linux/wgett.html

Quero pegar um arquivo muito grande e pode ser que caia a conexão. O wget continua de onde parou? R: Sim.
Exemplo:
Vamos supor que você queira baixar o BrOffice do site:
http://ftp.unicamp.br/pub/broffice/stable/2.0.3/broffice.org.2.0.3.rpm.tar.bz2

Então você deve digitar o comando: ($ significa prompt do usuário não-root)
obs: o comando foi quebrado em 2 linhas pois é extenso. Coloque-o
em uma única linha.


[user@maquina downloads]$ wget -t0 ftp.unicamp.br/pub/broffi ce/stable/2.0.3/broffice.org.2.0.3.rpm.tar.bz2
--19:18:50-- http://ftp.unicamp.br/pub/broffice/stable/2. 0.3/broffice.org.2.0.3.rpm.tar.bz2
=> `broffice.org.2.0.3.rpm.tar.bz2'
Resolvendo ftp.unicamp.br... 143.106.10.150
Connecting to ftp.unicamp.br|143.106.10.150|:80... conecta do!
HTTP requisição enviada, aguardando resposta... 200 OK
Tamanho: 106,164,173 (101M) [application/x-tar]
100%[=================>] 106,164,173 1.50M/s ETA 00:00


Parâmetros:
-r = recursivo (pega os subdiretórios).
-l x = quantos níveis de recursão (x), o valor 0 (zero) é infinito .
-c = vamos supor que vc interrompeu um download, para reinicar o download de onde estava use -c.
-t x = (ex: -t20, tentará conectar por 20 vezes) número de tentativas (x), o valor 0 (zero) (significa) infinitas tentativas.
-nc = caso baixe o mesmo arquivo várias vezes, -nc não permite que tenha várias cópias. (útil quando usamos a opção -r (recursive) pois o mesmo arquivo pode estar em diretórios diferentes).

Fazer cópias de SITES!!

Para fazer isso é preciso dizer:

Se por acaso você estiver tentando baixar um arquivo de um site de FTP que exige autenticação, siga este exemplo:

$ wget ftp://login@senha@http://ftp.usp.br/pub/Linux/files.iso

Veja que adicionamos o login@senha@ antes do endereço do arquivo a baixar, onde você coloca o seu login e senha.

Se você quiser tentar baixar um site inteiro, use o parâmetro -r (RECURSIVE) como em:

$ wget -r http://www.terra.com.br

Isso vai criar uma pasta dentro do diretório atual, onde o wget tentará reproduzir toda a estrutura de diretórios do site.

Lembre-se que muitos sites são realmente grandes o que vai fazer o download demorar horas ou dias. Além disso ripar sites é extremamente deselegante pois consome uma quantidade absurda de banda, prejudicando o acesso de outros usuários.

Muitos servidores utilizam proteções que o expulsam por algumas horas caso você tente acessar mais do que N páginas por minuto, de modo a impedir a ripagem.

Uma forma de minimizar isso seria baixar apenas páginas html do site, deixando de lado as imagens e outros arquivos. Neste caso você usa o parâmetro -A, seguido dos tipos de arquivos a serem baixados, como em:

$ wget -r -A ".html" http://www.terra.com.br

O wget converte automaticamente páginas php, asp e outras extensões para html, de forma que esse comando funciona bem com a maioria dos sites.


Exemplos retirados de: http://www.fg.med.br/linux/wgett.html


Sintaxe do Comando: wget [opções] [URL]

Opção de início:
-b, --background: roda o wget e libera o prompt

Log e arquivo de entrada:
-i FILE, --input-file=FILE ler URLs do arquivo FILE. Neste caso não é preciso especificar URL na linha de comando. As URLs devem ser listadas sequencialmente.
-o FILE, --output-file=FILE fazer log das mensagens para o arquivo FILE.
-q, --quiet modo silencioso.

Opções de download:
-t x ajustar o número de tentativas de conexão com o site (0 sem limites).
-c retoma download de arquivo parcialmente baixado (IMPORTANTE).
-N não baixa arquivo repedido (útil qdo usar -r) a não ser que seja mais atual do que já foi baixado.
-Y, --proxy=on/off habilita ou não proxy.
-nc, --no-clobber não substituir arquivos existentes
(útil qdo usar -r) .

Diretórios:
-nd --no-directories não cria diretórios.
-x, --force-directories força a criação de diretórios.

Opções HTTP (sites restritos):
--http-user=USER fornece nome de usuário =USER.
--http-passwd=PASS fornece senha http =PASS.

Ex para ftp: wget ftp://login@senha@http://ftp.usp.br/pub/Linux/files.iso

Opções FTP:
--retr-symlinks normalmente quando wget encontra um link ele faz uma cópia local do link, não fazendo download do arquivo apontado. Esta opção faz com que o arquivo linkado seja salvo no lugar do link.
--passive-ftp usar modo de transferência "passivo".

Download recursivo:
-r Baixar arquivos de vários níveis de diretório, ou seja, baixa os arquivos dos diretórios que estão dentro do diretório principal e assim sucessivamente até 5 níveis (padrão).

-l (êle) x (ex: -l3) baixa até o 3o nível de diretório. (-l0 (zero) baixa em nível infinito).
-k, --convert-links converter links não-relativos para relativos.
-p, --page-requisites fazer download de todas as imagens, etc necessárias para mostrar a página HTML.

Opções para aceitar/rejeitar recursivos:
--follow-ftp segue links FTP em páginas HTML. O padrão é ignorar links FTP.
-H, --span-hosts ir para outros domínios quando recursivo.
-L, --relative seguir somente links relativos. Útil para download de uma homepage específica, sem qualquer distração.
-np, --no-parent não subir para o diretório-pai. O download é feito somente dos arquivos abaixo da hierarquia (dos níveis abaixo do diretório principal).

Opção recusar arquivo
-A *. essa opção recusa arquivos de um certo tipo. Ex: -A *.jpg

Alguns exemplos:

Iniciar download recursivo de (pega arquivos dos diretórios dentro dos diretórios iniciais), -l0 (somente até o nível 1) convertendo links, pegando todos os arquivos porém seguindo somente links relativos.

$ wget -r -l1 -k -L www.lalala.com.br

$ wget --convert-links -r  -o arquivo-log
Fazer download de convertendo os links, recursivo 5 níveis, salvando o log em arquivo-log.

$ wget -E -H -k -K -p http:///
Download de página específica, com todos os seus requisitos (mesmo se eles estiverem em outro website).

$ wget -r -l1 --no-parent -A.gif http://www.server.com/dir/
Download de todos os arquivos GIF presentes em um diretório.

$ wget -nc -r 
Retomar download de sem pegar arquivos já presentes.