Cómo usar wget, la herramienta de descarga de línea de comandos definitiva

  • Justin Pot

    @jhpot

  • 26 de noviembre de 2016, 6:40am EDT

wget-basic

Lo nuevo no siempre es mejor, y el comando wget es la prueba. Lanzado por primera vez en 1996, esta aplicación sigue siendo uno de los mejores gestores de descargas del planeta. Ya sea que quieras descargar un solo archivo, una carpeta entera, o incluso replicar un sitio web completo, wget te permite hacerlo con sólo unas pocas pulsaciones.

Por supuesto, hay una razón por la que no todo el mundo usa wget: es una aplicación de línea de comandos, y como tal toma un poco de tiempo para que los principiantes aprendan. Aquí están los fundamentos, para que puedas empezar.

Cómo instalar wget

Antes de que puedas usar wget, necesitas instalarlo. La forma de hacerlo varía en función de tu ordenador:

  • La mayoría de las distribuciones de Linux (si no todas) vienen con wget por defecto. Así que los usuarios de Linux no tienen que hacer nada!
  • Los sistemas MacOS no vienen con wget, pero puedes instalar herramientas de línea de comandos usando Homebrew. Una vez que hayas configurado Homebrew, sólo tienes que ejecutar brew install wget en la Terminal.
  • Los usuarios de Windows no tienen un acceso fácil a wget en el Símbolo del sistema tradicional, aunque Cygwin proporciona wget y otras utilidades GNU, y el shell Bash de Ubuntu de Windows 10 también viene con wget.
Publicidad

Una vez que hayas instalado wget, puedes empezar a usarlo inmediatamente desde la línea de comandos. Vamos a descargar algunos archivos!

Descargar un solo archivo

Empecemos con algo sencillo. Copia la URL de un archivo que quieras descargar en tu navegador.

copiar-url-descarga

Ahora vuelve al Terminal y escribe wget seguido de la URL pegada. El archivo se descargará, y verás el progreso en tiempo real mientras lo hace.

wget-basic

Relacionado: Cómo gestionar archivos desde la terminal de Linux: 11 comandos que debes conocer

Ten en cuenta que el archivo se descargará en la carpeta actual de tu Terminal, por lo que querrás cd en una carpeta diferente si quieres que se almacene en otro lugar. Si no estás seguro de lo que esto significa, consulta nuestra guía sobre la gestión de archivos desde la línea de comandos. El artículo menciona Linux, pero los conceptos son los mismos en sistemas macOS, y en sistemas Windows que ejecutan Bash.

Continuar una descarga incompleta

Si, por la razón que sea, detuviste una descarga antes de que pudiera terminar, no te preocupes: wget puede continuar justo donde lo dejó. Sólo tienes que usar este comando:

wget -c file

wget-continue

Publicidad

La clave aquí es -c, que es una «opción» en el lenguaje de la línea de comandos. Esta opción en particular le dice a wget que te gustaría continuar una descarga existente.

Espejar un sitio web completo

Si quieres descargar un sitio web completo, wget puede hacer el trabajo.

wget -m http://example.com

wget-mirror

Por defecto, esto descargará todo en el sitio example.com, pero probablemente vas a querer usar algunas opciones más para un espejo utilizable.

  • --convert-links cambia los enlaces dentro de cada página descargada para que apunten a cada uno, no a la web.
  • --page-requisites descarga cosas como las hojas de estilo, por lo que las páginas se verán correctamente sin conexión.
  • --no-parent impide que wget descargue los sitios padres. Así que si quieres descargar http://example.com/subexample, no terminarás con la página padre.
Publicidad

Combina estas opciones al gusto, y terminarás con una copia de cualquier sitio web que puedas navegar en tu ordenador.

Tenga en cuenta que reflejar un sitio web completo en la Internet moderna va a ocupar una cantidad masiva de espacio, así que limite esto a sitios pequeños a menos que tenga un almacenamiento casi ilimitado.

Descargar un directorio entero

Si estás navegando por un servidor FTP y encuentras una carpeta entera que quieres descargar, simplemente ejecuta:

wget -r ftp://example.com/folder

El r en este caso le dice a wget que quieres una descarga recursiva. También puedes incluir --noparent si quieres evitar la descarga de carpetas y archivos por encima del nivel actual.

Descarga una lista de archivos a la vez

Si no puedes encontrar una carpeta completa de las descargas que quieres, wget aún puede ayudarte. Sólo tienes que poner todas las URLs de descarga en un único archivo TXT.

text-document-downloads

Publicidad

Entonces apunta a wget a ese documento con la opción -i. Así:

wget -i download.txt

wget-text-document

Haz esto y tu ordenador descargará todos los archivos listados en el documento de texto, lo cual es práctico si quieres dejar un montón de descargas en marcha durante la noche.

Algunos trucos más

Podríamos seguir: wget ofrece un montón de opciones. Pero este tutorial sólo pretende darte un punto de partida. Para aprender más sobre lo que wget puede hacer, escribe man wget en el terminal y lee lo que aparece. Aprenderás mucho.

Publicidad

Dicho esto, aquí tienes otras opciones que me parecen geniales:

  • Si quieres que tu descarga se ejecute en segundo plano, simplemente incluye la opción -b.
  • Si quieres que wget siga intentando la descarga aunque haya un error 404, utiliza la opción -t 10. Eso intentará descargar 10 veces; puedes usar el número que quieras.
  • Si quieres gestionar tu ancho de banda, la opción --limit-rate=200k limitará tu velocidad de descarga a 200KB/s. Cambia el número para cambiar la velocidad.
    • Hay mucho más que aprender aquí. Usted puede mirar en la descarga de la fuente de PHP, o la creación de un descargador automatizado, si usted quiere conseguir más avanzado.

      Justin Pot
      Justin Pot ha estado escribiendo sobre la tecnología durante más de una década, con el trabajo que aparece en Digital Trends, The Next Web, Lifehacker, MakeUseOf, y el Blog Zapier. También dirige el Hillsboro Signal, un medio de comunicación local impulsado por voluntarios que él mismo fundó.Read Full Bio »

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *