Comando Wget 10 Exemplos Prático

Neste post vamos mostrar alguns exemplos práticos do comando wget que usado para baixar arquivos da web pelo terminal do Linux, utilizando protocolos amplamente utilizados como HTTP, HTTPS e FTP. O pacote wget é um pacote livre disponível sob a licença GNU/GPL License. Este utilitário pode ser instalado em qualquer sistema operacional Unix incluindo o Windows e MAC OS. É uma ferramenta de linha de comando. Ele foi projetado de tal forma para que funcione em conexões de rede lentas ou instáveis. wget iniciar automaticamente o download, onde foi parado em caso de problema de rede e também downloads de arquivos de forma recursiva. Ele vai continuar tentando até que o arquivo tenha se recuperado completamente.

Comando Wget - 10 Exemplos Prático

Comando Wget 10 Exemplos Prático

 

Comando Wget 10 Exemplos Prático

O pacote wget por padrão vem instalado em distribuições baseadas em Debian, como nosso caso Ubuntu, caso utilize outras distribuições que não tenha instalado como CentOS baseada Red Hat Enterprise Linux por exemplo, instale com o comando abaixo:

 1. Baixando Arquivos usando wget

O comando irá baixar um único arquivo e armazena no diretório atual. Também mostra o progresso do download, tamanho, data e hora durante o download. Veja o código abaixo:

 

[email protected]:~# wget ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
–2014-09-28 13:47:06– http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
Resolving ftp.gnu.org (ftp.gnu.org)… 208.118.235.20, 2001:4830:134:3::b
Connecting to ftp.gnu.org (ftp.gnu.org)|208.118.235.20|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 446966 (436K) [application/x-gzip]
Saving to: ‘wget-1.5.3.tar.gz’

100%[======================================>] 446,966 –.-K/s in 0.1s

2014-09-28 13:47:06 (4.27 MB/s) – ‘wget-1.5.3.tar.gz’ saved [446966/446966]

 2. Baixando arquivos com nome diferente usando wget

Utilizando o comando wget com o parâmetro -O (em maiúsculas), você poderá baixar o arquivo com nome diferente, veja exemplo abaixo.

[email protected]:~# wget -O wget.zip http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
–2014-09-28 13:49:57– http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
Resolving ftp.gnu.org (ftp.gnu.org)… 208.118.235.20, 2001:4830:134:3::b
Connecting to ftp.gnu.org (ftp.gnu.org)|208.118.235.20|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 446966 (436K) [application/x-gzip]
Saving to: ‘wget.zip’

100%[======================================>] 446,966 –.-K/s in 0.1s

2014-09-28 13:49:57 (3.83 MB/s) – ‘wget.zip’ saved [446966/446966]

 3. Baixando vários arquivos com o comando wget

Veja o exemplo abaixo como fazer download de vários arquivos com o comando wget, nesse exemplo baixamos arquivos do protocolo FTP e HTTP, confira no exemplo abaixo:

[email protected]:~# wget http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz ftp://ftp.gnu.org/gnu/wget/wget-1.10.1.tar.gz.sig

–2014-09-28 14:06:54– http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz
Resolving ftp.gnu.org (ftp.gnu.org)… 208.118.235.20, 2001:4830:134:3::b
Connecting to ftp.gnu.org (ftp.gnu.org)|208.118.235.20|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 446966 (436K) [application/x-gzip]
Saving to: ‘wget-1.5.3.tar.gz.1’

100%[======================================>] 446,966 –.-K/s in 0.1s

2014-09-28 14:06:54 (3.99 MB/s) – ‘wget-1.5.3.tar.gz.1’ saved [446966/446966]

–2014-09-28 14:06:54– ftp://ftp.gnu.org/gnu/wget/wget-1.10.1.tar.gz.sig
=> ‘wget-1.10.1.tar.gz.sig’
Connecting to ftp.gnu.org (ftp.gnu.org)|208.118.235.20|:21… connected.
Logging in as anonymous … Logged in!
==> SYST … done. ==> PWD … done.
==> TYPE I … done. ==> CWD (1) /gnu/wget … done.
==> SIZE wget-1.10.1.tar.gz.sig … 65
==> PASV … done. ==> RETR wget-1.10.1.tar.gz.sig … done.
Length: 65 (unauthoritative)

100%[======================================>] 65 –.-K/s in 0s

2014-09-28 14:06:54 (12.8 MB/s) – ‘wget-1.10.1.tar.gz.sig’ saved [65]

FINISHED –2014-09-28 14:06:54–
Total wall clock time: 0.3s
Downloaded: 2 files, 437K in 0.1s (3.99 MB/s)

4. Baixando arquivos a partir de um arquivo texto com as URL para downloads

Você pode armazenar várias URLs em um arquivo de texto, separadas por linhas e transferi-las com o parametro -i.  Veja no exemplo abaixo adicionei 2 URLs e fiz o download, claro que poderá adicionar inúmeros arquivos.

[email protected]:~# wget -i wget/tmp.txt
–2014-09-28 14:45:35– http://downloads.sourceforge.net/project/xampp/XAMPP%20Linux/1.8.2/xampp-linux-x64-1.8.2-6-installer.run
Resolving downloads.sourceforge.net (downloads.sourceforge.net)… 216.34.181.59
Connecting to downloads.sourceforge.net (downloads.sourceforge.net)|216.34.181.59|:80… connected.
HTTP request sent, awaiting response… 302 Found
Location: http://superb-dca3.dl.sourceforge.net/project/xampp/XAMPP%20Linux/1.8.2/xampp-linux-x64-1.8.2-6-installer.run [following]
–2014-09-28 14:45:36– http://superb-dca3.dl.sourceforge.net/project/xampp/XAMPP%20Linux/1.8.2/xampp-linux-x64-1.8.2-6-installer.run
Resolving superb-dca3.dl.sourceforge.net (superb-dca3.dl.sourceforge.net)… 207.228.224.228
Connecting to superb-dca3.dl.sourceforge.net (superb-dca3.dl.sourceforge.net)|207.228.224.228|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 118282842 (113M) [application/x-makeself]
Saving to: ‘xampp-linux-x64-1.8.2-6-installer.run’

100%[======================================>] 118,282,842 16.9MB/s in 7.2s

2014-09-28 14:45:44 (15.7 MB/s) – ‘xampp-linux-x64-1.8.2-6-installer.run’ saved [118282842/118282842]

–2014-09-28 14:45:44– http://ubuntu.blog.br/wp-content/uploads/2014/08/Minecraft-1.7-Ubuntu.blog_.br_1.rar
Resolving ubuntu.blog.br (ubuntu.blog.br)… 192.99.17.50
Connecting to ubuntu.blog.br (ubuntu.blog.br)|192.99.17.50|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 3923836 (3.7M) [application/x-rar-compressed]
Saving to: ‘Minecraft-1.7-Ubuntu.blog_.br_.rar’

100%[======================================>] 3,923,836 8.05MB/s in 0.5s

2014-09-28 14:45:45 (8.05 MB/s) – ‘Minecraft-1.7-Ubuntu.blog_.br_.rar’ saved [3923836/3923836]

FINISHED –2014-09-28 14:45:45–
Total wall clock time: 9.1s
Downloaded: 2 files, 117M in 7.6s (15.3 MB/s)

5. Downloads de Arquivos Incompletos usando wget

Em caso de download de arquivos muito grande, pode acontecer algum problema na rede e para parar o download, nesse caso você poderá retomar o download do mesmo arquivo em que foi parado com o parâmetro -c. Mas quando você começar a baixar arquivo sem especificar wget opção -c irá adicionar 0,1 extensão no final do arquivo, considerando-se como um novo download. Então, quando for baixar arquivos muitos grande sempre adicione esse parâmetro pois assim o download irá continuar de onde parou.

[email protected]:~# wget -c http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/release/ubuntu-gnome-14.04.1-desktop-amd64.iso

–2014-09-28 15:00:30– http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/release/ubuntu-gnome-14.04.1-desktop-amd64.iso

Resolving cdimage.ubuntu.com (cdimage.ubuntu.com)… 91.189.92.174, 2001:67c:1360:8c01::21
Connecting to cdimage.ubuntu.com (cdimage.ubuntu.com)|91.189.92.174|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 980418560 (935M) [application/x-iso9660-image]
Saving to: ‘ubuntu-gnome-14.04.1-desktop-amd64.iso’

54% [====================> ] 534,694,736 12.4MB/s eta 32s

6. Salvando o mesmo arquivo com nome diferente com .1 no final do Arquivo

Caso você tentar adicionar o mesmo arquivo dentro da pasta e usar o comando sem o parâmetro -c, o arquivo será baixado com o .1 no final do nome do arquivo, se caso continue a baixar esse arquivo com o parametro -c o mesmo, vai continuar o download.

Observe com atenção os exemplos abaixo:

[email protected]:~# wget http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/release/ubuntu-gnome-14.04.1-desktop-amd64.iso
–2014-09-28 15:03:41– http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/release/ubuntu-gnome-14.04.1-desktop-amd64.iso
Resolving cdimage.ubuntu.com (cdimage.ubuntu.com)… 91.189.92.164, 2001:67c:1360:8c01::1f
Connecting to cdimage.ubuntu.com (cdimage.ubuntu.com)|91.189.92.164|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 980418560 (935M) [application/x-iso9660-image]
Saving to: ‘ubuntu-gnome-14.04.1-desktop-amd64.iso.1’

22% [=======> ] 217,198,592 34.5MB/s eta 33s

 

Com parametro -c:

 

[email protected]:~# wget -c http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/release/ubuntu-gnome-14.04.1-desktop-amd64.iso
–2014-09-28 15:08:35– http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/release/ubuntu-gnome-14.04.1-desktop-amd64.iso
Resolving cdimage.ubuntu.com (cdimage.ubuntu.com)… 91.189.92.164, 2001:67c:1360:8c01::1f
Connecting to cdimage.ubuntu.com (cdimage.ubuntu.com)|91.189.92.164|:80… connected.
HTTP request sent, awaiting response… 206 Partial Content
Length: 980418560 (935M), 232623136 (222M) remaining [application/x-iso9660-image]
Saving to: ‘ubuntu-gnome-14.04.1-desktop-amd64.iso’

76% [+++++++++++++++++++++++++++++ ] 750,204,012 1.06MB/s

 

Arquivos dentro da pasta que foram baixados com e sem parâmetro -c:

ubuntu-gnome-14.04.1-desktop-amd64.iso
ubuntu-gnome-14.04.1-desktop-amd64.iso.1

7. Baixando Arquivo em Background

Outra maneira você poderá baixar também é em background, o arquivo será baixo e vai salvar o andamento do download em um arquivo de log na pasta /wget/log.txt.

Veja exemplo de um arquivo de log:

/wget/log.txt: Scheme missing.
–2014-09-28 15:13:52– http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/$
Resolving cdimage.ubuntu.com (cdimage.ubuntu.com)… 91.189.92.164, 2001:67c:13$
Connecting to cdimage.ubuntu.com (cdimage.ubuntu.com)|91.189.92.164|:80… conn$
HTTP request sent, awaiting response… 200 OK
Length: 980418560 (935M) [application/x-iso9660-image]
Saving to: ‘ubuntu-gnome-14.04.1-desktop-amd64.iso’

0K ………. ………. ………. ………. ………. 0% 140K 1h54m
50K ………. ………. ………. ………. ………. 0% 349K 79m52s
100K ………. ………. ………. ………. ………. 0% 689K 60m58s
150K ………. ………. ………. ………. ………. 0% 695K 51m27s
200K ………. ………. ………. ………. ………. 0% 697K 45m44s
250K ………. ………. ………. ………. ………. 0% 695K 41m56s
300K ………. ………. ………. ………. ………. 0% 338K 42m42s
350K ………. ………. ………. ………. ………. 0% 88.6M 37m23s
400K ………. ………. ………. ………. ………. 0% 700K 35m46s
450K ………. ………. ………. ………. ………. 0% 698K 34m28s
500K ………. ………. ………. ………. ………. 0% 700K 33m24s

 

 8. Como Limitar a velocidade de Download com o comando wget

Também é possível limitar a velocidade de download dos arquivos com o comando wget, veja o exemplo abaixo como limitei a velocidade de download de um arquivo para 100 KB/s.

[email protected]:~# wget -c –limit-rate=100k /wget/log.txt http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/release/ubuntu-gnome-14.04.1-desktop-amd64.iso
/wget/log.txt: Scheme missing.
–2014-09-28 19:36:10– http://cdimage.ubuntu.com/ubuntu-gnome/releases/14.04/release/ubuntu-gnome-14.04.1-desktop-amd64.iso
Resolving cdimage.ubuntu.com (cdimage.ubuntu.com)… 91.189.92.168, 2001:67c:1360:8c01::1f
Connecting to cdimage.ubuntu.com (cdimage.ubuntu.com)|91.189.92.168|:80… connected.
HTTP request sent, awaiting response… 206 Partial Content
Length: 980418560 (935M), 139983972 (133M) remaining [application/x-iso9660-image]
Saving to: ‘ubuntu-gnome-14.04.1-desktop-amd64.iso’

85% [+++++++++++++++++++++++++++++++++ ] 841,222,160 100KB/s eta 22m 41s

 

 9. Fazendo Download apenas de certos tipos de Arquivos

Baixe apenas arquivos com extensão que quiser, com esse comando vai lhe ajudar muito nessa tarefa.

 

10. Baixando Arquivos de Servidor FTP

Caso for fazer uma conexão anônima, faça como no exemplo abaixo:

Caso seu servidor FTP use login e senha use o comando como no exemplo abaixo:

 

Nesse tutorial foi listado apenas 10 comandos, que acredito ser mais usado, eu uso muito esses comandos e acredito que seja os mais usados também, e você qual comando mais usa para baixar seus arquivo? Gostaria de compartilhar conosco?

Deixe nos comentários!

 

Comando Wget 10 Exemplos Prático
5 (100%) 1 vote