Qué es y cómo usar el comando wget + 12 ejemplos

Esta guía te mostrará cómo usar el comando wget Linux. También te proporcionaremos 12 ejemplos útiles de este comando. Al final, sabrás todo sobre el comando wget y podrás usarlo para descargar archivos de Internet.

¿Qué es el Comando Wget?

Wget es una herramienta informática creada por el Proyecto GNU. Puedes usarlo para recuperar contenido y archivos de varios servidores web. El nombre es una combinación de World Wide Web y la palabra get. Admite descargas a través de FTP, SFTP, HTTP y HTTPS.

Wget se crea en C portátil y se puede usar en cualquier sistema Unix. También es posible implementarlo en Mac OS X, Microsoft Windows, AmigaOS y otras plataformas populares.

¿Cómo instalar el comando Wget?

Para esta demostración del comando, usaremos Ubuntu 22.04. Pero la sintaxis también funcionará en cualquier otra versión de Linux.

En primer lugar, accede a tu servidor a través de SSH. Ejecuta el siguiente comando para la instalación en tu sistema:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
apt-get install wget
apt-get install wget
apt-get install wget

Una vez que finalice la configuración, estará listo para usarlo. Además, el conocimiento de los comandos básicos de SSH puede facilitar las cosas.

Ejemplos de Comandos Wget

Para que empieces, te brindamos 12 ejemplos que puedes usar en tareas cotidianas. ¡Ten en cuenta que también puedes llamar a esta función desde scripts y cron jobs!

Usando el comando Wget para descargar archivos individuales

Uno de los ejemplos más básicos de este comando es descargar un único archivo y almacenarlo en su directorio de trabajo actual. Por ejemplo, puede obtener la última versión de WordPress usando lo siguiente:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget https://wordpress.org/latest.zip
wget https://wordpress.org/latest.zip
wget https://wordpress.org/latest.zip

Aquí está el resultado que verás:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
--2018-02-23 12:53:10-- https://wordpress.org/latest.zip
Resolving wordpress.org (wordpress.org)... 198.143.164.252
Connecting to wordpress.org (wordpress.org)|198.143.164.252|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9332728 (8,9M) [application/zip]
Saving to: 'latest.zip'
latest.zip 100%[===================>] 8,90M 6,88MB/s in 1,3s
2018-02-23 12:53:14 (6,88 MB/s) - 'latest.zip' saved [9332728/9332728]
--2018-02-23 12:53:10-- https://wordpress.org/latest.zip Resolving wordpress.org (wordpress.org)... 198.143.164.252 Connecting to wordpress.org (wordpress.org)|198.143.164.252|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 9332728 (8,9M) [application/zip] Saving to: 'latest.zip' latest.zip 100%[===================>] 8,90M 6,88MB/s in 1,3s 2018-02-23 12:53:14 (6,88 MB/s) - 'latest.zip' saved [9332728/9332728]
--2018-02-23 12:53:10-- https://wordpress.org/latest.zip
Resolving wordpress.org (wordpress.org)... 198.143.164.252
Connecting to wordpress.org (wordpress.org)|198.143.164.252|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9332728 (8,9M) [application/zip]
Saving to: 'latest.zip'

latest.zip 100%[===================>] 8,90M 6,88MB/s in 1,3s

2018-02-23 12:53:14 (6,88 MB/s) - 'latest.zip' saved [9332728/9332728]

En este ejemplo, se descargará un archivo llamado latest.zip en el directorio de trabajo actual. También verá información adicional, como el progreso de la descarga, la velocidad, el tamaño, la hora y la fecha.

Usando el comando Wget para descargar varios archivos
Podemos llevar el uso de wget un paso más allá y descargar múltiples archivos a la vez. Para hacer esto, necesitaremos crear un documento de texto y ubicar las URL de descarga allí. En este ejemplo, recuperaremos las últimas versiones de WordPress, Joomla y Drupal. Introduzca la siguiente:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
nano example.txt
nano example.txt
nano example.txt

Esto creará un archivo example.txt y abrirá una interfaz de editor de texto. Pega estos enlaces allí:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
https://wordpress.org/latest.zip
https://downloads.joomla.org/cms/joomla3/3-8-5/Joomla_3-8-5-Stable-Full_Package.zip
https://ftp.drupal.org/files/projects/drupal-8.4.5.zip
https://wordpress.org/latest.zip https://downloads.joomla.org/cms/joomla3/3-8-5/Joomla_3-8-5-Stable-Full_Package.zip https://ftp.drupal.org/files/projects/drupal-8.4.5.zip
https://wordpress.org/latest.zip

https://downloads.joomla.org/cms/joomla3/3-8-5/Joomla_3-8-5-Stable-Full_Package.zip

https://ftp.drupal.org/files/projects/drupal-8.4.5.zip

Una vez hecho esto, puede usar -i para obtener todos los archivos almacenados en tu archivo de texto de ejemplo:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget -i example.txt
wget -i example.txt
wget -i example.txt

Espera a que el proceso finalice y tendrsá las instalaciones de los tres sistemas de administración de contenido más populares.

Usar el comando Wget para obtener archivos bajo nombres diferentes

En este ejemplo de wget, guardaremos un archivo usando un nombre diferente con la ayuda de la opción -O:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget -O wordpress-install.zip https://wordpress.org/latest.zip
wget -O wordpress-install.zip https://wordpress.org/latest.zip
wget -O wordpress-install.zip https://wordpress.org/latest.zip

En este caso, el recurso descargado se guardará como wordpress-install.zip en lugar de su nombre original.

Usar el comando Wget para guardar archivos en el directorio especificado

Puedes utilizar wget para colocar un archivo en otro directorio usando la función -P:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget -P documents/archives/ https://wordpress.org/latest.zip
wget -P documents/archives/ https://wordpress.org/latest.zip
wget -P documents/archives/ https://wordpress.org/latest.zip

El archivo que recuperes usando esta sintaxis aparecerá en documentos/archivos/ carpeta.

Usar el comando Wget para limitar la velocidad de descarga

Con wget, también puedes limitar la velocidad de descarga. Esto es útil cuando recuperas archivos grandes y evitará que use todo tu ancho de banda. Este ejemplo de wget establecerá el límite a 500k:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget --limit-rate=500k https://wordpress.org/latest.zip
wget --limit-rate=500k https://wordpress.org/latest.zip
wget --limit-rate=500k https://wordpress.org/latest.zip

Uso del comando Wget para establecer cantidad de reintento

Los problemas de conexión a Internet pueden hacer que la descarga se interrumpa. Para abordar este problema, podemos aumentar la cantidad de reintentos usando la función -tries:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget -tries=100 https://wordpress.org/latest.zip
wget -tries=100 https://wordpress.org/latest.zip
wget -tries=100 https://wordpress.org/latest.zip

Usar el comando Wget para descargas en segundo plano

Para archivos extremadamente grandes, puede aprovechar la función -b. Descargará su contenido en segundo plano.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget -b http://example.com/beefy-file.tar.gz
wget -b http://example.com/beefy-file.tar.gz
wget -b http://example.com/beefy-file.tar.gz

Un wget-log aparecerá en tu directorio de trabajo, que se puede usar para verificar el progreso y el estado de tu descarga. Este comando también hará el truco:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
tail -f wget-log
tail -f wget-log
tail -f wget-log

Usando el comando Wget para descargar a través de FTP

El comando también se puede usar con FTP. Solo necesitarás especificar el nombre de usuario y la contraseña como en este ejemplo:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget --ftp-user=YOUR_USERNAME --ftp-password=YOUR_PASSWORD ftp://example.com/something.tar
wget --ftp-user=YOUR_USERNAME --ftp-password=YOUR_PASSWORD ftp://example.com/something.tar
wget --ftp-user=YOUR_USERNAME --ftp-password=YOUR_PASSWORD ftp://example.com/something.tar

Usando el comando Wget para continuar las descargas interrumpidas

Tu descarga puede interrumpirse si pierdes la conexión a Internet o experimenta un corte de energía. Esto es bastante frecuente cuando se obtienen archivos enormes. En lugar de comenzar de nuevo, es posible continuar la descarga usando la función -c:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget -c https://example/very-big-file.zip
wget -c https://example/very-big-file.zip
wget -c https://example/very-big-file.zip

Si continúas sin la función -c, el nuevo archivo tendrá .1 agregado al final tal como ya existe.

Usando el comando Wget para recuperar sitios web completos

También es posible usar el comando wget para descargar el contenido de un sitio completo. Esto le permitirá verlo localmente sin una conexión a Internet. Aquí hay un ejemplo:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget --mirror --convert-links --page-requisites --no-parent -P documents/websites/ https://some-website.com
wget --mirror --convert-links --page-requisites --no-parent -P documents/websites/ https://some-website.com
wget --mirror --convert-links --page-requisites --no-parent -P documents/websites/ https://some-website.com

Analicemos los ingredientes de este comando wget:

-mirror Hace que la descarga sea recurrente.
-convert-links Todos los enlaces se convertirán para un uso fuera de línea.
-page-requisities Lo siguiente incluirá todos los archivos necesarios tales como CSS, JS e imágenes.
-no-parent Asegura que los directorios que están por encima de la jerarquía no se recuperen.
-P  Esto asegura que todo el contenido vaya a nuestro directorio especificado.

Una vez que el proceso finalice, podrás abrir el sitio web descargado localmente y encontrar todos los archivos en documentos/sitios web/ carpeta.

Usando el comando Wget para localizar enlaces rotos

Intentemos algo más avanzado. Podemos usar el comando para localizar todas las URL rotas que muestran el error 404 en un sitio web específico. Comienza ejecutando lo siguiente:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget -o wget-log -r -l 5 --spider http://example.com
wget -o wget-log -r -l 5 --spider http://example.com
wget -o wget-log -r -l 5 --spider http://example.com

-o Recopila la salida en un archivo para su uso posterior.
-l Especifica el nivel de recurrencia.
-r Hace que la descarga sea recurrente.
-spider Configura wget en el modo araña.

Ahora podemos investigar el archivo wget-log para encontrar la lista de enlaces rotos. Aquí está el comando para hacerlo:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
grep -B 2 '404' wget-log | grep "http" | cut -d " " -f 4 | sort -u
grep -B 2 '404' wget-log | grep "http" | cut -d " " -f 4 | sort -u
grep -B 2 '404' wget-log | grep "http" | cut -d " " -f 4 | sort -u

Usando el comando Wget para descargar archivos numerados

Si tienes archivos o imágenes numeradas en una lista determinada, puedes descargarlas fácilmente con la siguiente sintaxis:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
wget http://example.com/images/{1..50}.jpg
wget http://example.com/images/{1..50}.jpg
wget http://example.com/images/{1..50}.jpg

Conclusión

¡Felicitaciones! Al completar este tutorial, haz aprendido varios usos para el comando wget. Ahora puedes utilizarlo para obtener uno o varios archivos. Además, has aprendido algunos usos avanzados, como la descarga de un sitio web completo o la localización de URL rotas. Para obtener más información, también puede consultar la documentación oficial.

¿Hay algún truco o consejo oculto que deseas compartir? ¡Siéntase libre de hacerlo en los comentarios a continuación!

Author
El autor

Gustavo B.

Gustavo es un apasionado por la creación de sitios web. Se enfoca en la aplicación de estrategias SEO en Hostinger para España y Latinoamérica, así como la creación de contenidos de alto nivel. Cuando no está aplicando nuevos trucos en WordPress lo puedes encontrar tocando la guitarra, viajando o tomando un curso online.