Hay decenas de apliaciones para descargar archivos, la mayoría basadas en interfaces Web y de escritorio, y para todos los sistemas operativos. Sin embargo en Linux (y también hay versión para Windows) existe el poderoso descargador de archivos wget. Esta considerado como el descargador (downloader) más potente que existe, soporta http, https y ftp. En este artículo, a través de varios ejemplos aprenderás sus usos y opciones más comunes.
Ejemplos básicos
Código: Seleccionar todo
wget http://ejemplo.com/programa.tar.gz
Código: Seleccionar todo
wget http://ejemplo.com/programa.tar.gz ftp://otrositio.com/descargas/video.mpg
Código: Seleccionar todo
wget http://ejemplo.com/*.pdf
Código: Seleccionar todo
(creamos una lista en archivos.txt que serán descargados)
http://ejemplo.com/programa.tar.gz
http://ejemplo.com/rpm/paquete.rpm
ftp://otrositio.com/descargas/distro.iso
Código: Seleccionar todo
wget -i archivos.txt
Código: Seleccionar todo
wget -c http://ejemplo.com/distro.iso
wget -i -c archivos.txt
Código: Seleccionar todo
wget -o reporte.txt http://ejemplo.com/programa.tar.gz
Código: Seleccionar todo
$ wget -o /reporte.log --limit-rate=50k ftp://ftp.centos.org/download/centos5-dvd.iso
Código: Seleccionar todo
wget –http-user=admin –http-password=secreto http://ejemplo.com/archivo.mp3
Código: Seleccionar todo
wget -t 50 http://ejemplo.com/pelicula.mpg
Código: Seleccionar todo
wget -t inf http://ejemplo.com/pelicula.mpg
Ejemplos avanzados
Código: Seleccionar todo
wget http://www.enigmateam.org
Código: Seleccionar todo
wget -p http://www.enigmateam.org
Código: Seleccionar todo
wget -r www.ejemplo.com -o reporte.log
Código: Seleccionar todo
wget -r -l10 www.ejemplo.com -o reporte.log
Con la opción l se aumenta el nivel de recursividad hasta el número indicado, también es posible usar 'inf' como valor de recursividad infinito.
Código: Seleccionar todo
wget --convert-links -r http://www.sitio.com/
Código: Seleccionar todo
wget -k -r http://www.sitio.com/
Código: Seleccionar todo
wget -r -l3 -P/tmp/sitio ftp://www.unsitio.com/
Código: Seleccionar todo
wget --mirror http://www.enigmateam.org
Código: Seleccionar todo
wget -m http://www.enigmateam.org
Código: Seleccionar todo
wget --mirror --convert-links --html-extension http://www.enigmateam.org
Código: Seleccionar todo
wget -m -k -E http://www.enigmateam.org
Código: Seleccionar todo
wget -H -r -l3 -k -E -p http://miblog.sitiodeblogs.com
Este tipo de descargas, dependiendo del sitio, puede llenar todo un disco duro!!!!, asi que úsalo a discresión.
Un ejemplo extremo de la potencia de wget
El siguiente ejemplo viene muy bien detallado en este sitio, es una línea que busca archivos de música mp3 desde una lista de sitios que previamente hayas definido, recuerda, un renglón por cada sitio.
Código: Seleccionar todo
wget -r -l1 -H -t1 -nd -N -np -A.mp3 -erobots=off -i sitiosmp3.txt
[-r -l1] recursivo en solo un nivel, solo buscará un nivel en cada subdirectorio que encuentre por sitio.
[-H] si dentro del sitio encuentra un enlace externo, que lo siga, ya que posiblemente lleve a otro sitio de descarga de múscia.
[-t1] -t es igual --tries, solo hará un intento de conexión, si no lo logra continua al siguiente sitio.
[-nd] indica no crear subdirectorios para cada archivo descargado, es decir, todo nos lo deja en el mismo lugar.
[-N] conserva la fecha y hora (timestamp) del archivo original que se descargue, de otro modo pondría la fecha y hora de nuestro sistema.
[-np] no parent, no seguir enlaces a directorios superiores, solo del actual y uno hacía abajo, por -r -l1
[-A.mp3] -A indica a wget el tipo de archivo a descargar solamente, en este caso solo "mp3".
[-erobots=off] esto evita que wget ignore los archivos 'robots.txt' que pudiera haber, ya que puede ser que dentro de estos archivos haya indicaciones de que subdirectorios los buscadores no deben hurgar (incluyendo a wget). Con esto lo evitamos y buscamos en todo el nivel.
[-i sitiosmp3.txt] el archivo con la lista (hecha a tu gusto, con unos cuantos o decenas de sitios de música) de los sitios desde donde buscar "mp3" y descargarlos.
Si ejecutas este comando de manera diaria o a través de un cron entonces se descargará la música, y gracias a la marca de tiempo solo descargará los que sean más nuevos que el original.
Los anteriores ejemplos demuestran el enorme poder de "wget" y el porque es considerado el rey de los "downloaders".