WindowsMacSoftwareConfiguraciónSeguridadProductividadLinuxAndroidRendimientoConfiguraciónApple Todo

Cómo usar los comandos wget y curl en Linux

Editado 3 Hace unas semanas por ExtremeHow Equipo Editorial

Línea de comandosRedesSolicitudes HTTPTransferencias de archivosDescargaUtilidadesSecuencias de comandosAutomatizaciónWebHerramientas

Cómo usar los comandos wget y curl en Linux

Traducción actualizada 3 Hace unas semanas

Linux es un sistema operativo potente que se utiliza ampliamente para una variedad de tareas. Las dos herramientas más comunes para interactuar con la web a través de la línea de comandos son wget y curl. Estas herramientas son imprescindibles para cualquier persona que necesite descargar archivos, realizar solicitudes HTTP o interactuar con recursos de Internet directamente desde el terminal. Esta guía te introducirá a lo básico de ambos comandos wget y curl, discutirá sus diferencias y te mostrará cómo usarlos de manera efectiva.

Wget: comenzando

wget es una utilidad de línea de comandos que te permite descargar archivos de la web. Soporta protocolos HTTP, HTTPS y FTP, lo que lo convierte en una herramienta versátil para interactuar con recursos web. Para comenzar, primero necesitas verificar si wget está instalado en tu sistema Linux. Abre tu terminal y escribe:

wget --version

Si wget está instalado, verás su número de versión. Si no lo está, puedes instalarlo usando el gestor de paquetes de tu distribución. Por ejemplo, en Ubuntu o Debian, usa:

sudo apt-get install wget

En Fedora, usa:

sudo dnf install wget

Uso básico de wget

Una vez que wget esté instalado, puedes usarlo para descargar archivos. La forma más fácil de usar wget es escribir el comando seguido de la URL del archivo que quieres descargar:

wget http://example.com/file.txt

Este comando descargará file.txt de http://example.com y lo guardará en el directorio actual. wget usa el directorio actual como directorio base para guardar archivos, a menos que se especifique lo contrario.

Reanudar descargas con wget

Una de las características más útiles de wget es su capacidad para reanudar descargas pausadas. Si tu descarga fue interrumpida, puedes reanudarla con la opción -c:

wget -c http://example.com/largefile.zip

Si largefile.zip ya ha sido parcialmente descargado, este comando reanudará su descarga.

Descarga de múltiples archivos con wget

Para descargar múltiples archivos con wget, puedes usar un archivo de texto que contenga una lista de todas las URLs que deseas descargar. Por ejemplo, crea un archivo llamado urls.txt con las URLs de los archivos, luego pásalo a wget con la opción -i:

wget -i urls.txt

Este comando descargará cada archivo listado en urls.txt.

Descarga recursiva con wget

wget también soporta descargas recursivas, que pueden ser útiles para hacer un espejo de un sitio web completo. Para hacer que wget descargue archivos recursivamente, usa la opción -r:

wget -r http://example.com

Este comando descargará todos los archivos enlazados desde la página web especificada, hasta una profundidad de enlace predeterminada de 5.

Limitar la velocidad de descarga con wget

A veces, puedes querer limitar la velocidad de descarga para evitar consumir demasiado ancho de banda. Puedes usar la opción --limit-rate para limitar la velocidad de descarga:

wget --limit-rate=100k http://example.com/file.iso

Este comando descargará el archivo a una velocidad máxima de 100 kilobytes por segundo.

Curl: comenzando

curl es otra herramienta de línea de comandos que te permite interactuar con recursos web. Es más versátil que wget, especialmente cuando se trata de realizar solicitudes diferentes de simples descargas de archivos. Para verificar si curl está instalado, escribe:

curl --version

Si curl no está instalado, puedes instalarlo usando lo siguiente:

Para Ubuntu o Debian:

sudo apt-get install curl

Para Fedora:

sudo dnf install curl

Uso básico de curl

El uso más simple de curl es mostrar el contenido de una URL directamente en el terminal. Puedes lograrlo escribiendo:

curl http://example.com

Este comando obtendrá el contenido de http://example.com y lo mostrará en la ventana de tu terminal.

Descargando archivos con curl

A diferencia de wget, curl no guarda archivos por defecto. Para guardar el resultado en un archivo, usa la opción -o seguido del nombre de archivo deseado:

curl -o file.txt http://example.com/file.txt

Este comando descargará file.txt y lo guardará como file.txt en el directorio actual.

Reiniciando descargas con curl

Para reanudar un archivo descargado parcialmente con curl, usa la opción -C -:

curl -C - -o file.txt http://example.com/file.txt

Este comando reiniciará la descarga y continuará donde la dejaste.

Usando curl para solicitudes HTTP

curl es particularmente potente para realizar solicitudes HTTP y puede manejar una variedad de tipos de solicitudes, como POST, PUT, DELETE, etc. Para realizar una solicitud GET (que es la predeterminada), simplemente puedes escribir:

curl http://api.example.com/data

Para una solicitud POST, puedes enviar datos usando la opción -d:

curl -d "param1=value1¶m2=value2" http://api.example.com/post

Esto envía una solicitud POST con los parámetros param1 y param2.

Usando cabeceras con curl

curl te permite agregar cabeceras personalizadas a tus solicitudes, lo cual puede ser útil para interacciones con APIs. Usa la opción -H para incluir cabeceras:

curl -H "Authorization: Bearer token" http://api.example.com/data

Este comando añade una cabecera Authorization con un token de portador.

Uso de un proxy con wget y curl

Tanto wget como curl pueden usar un servidor proxy al realizar solicitudes. Para wget, puedes configurar un proxy configurando las variables de entorno http_proxy y https_proxy:

export http_proxy="http://proxyaddress:port"
wget http://example.com/file.txt

Para curl, puedes especificar un proxy usando la opción -x:

curl -x http://proxyaddress:port http://example.com/file.txt

Resumen

Tanto wget como curl son herramientas extremadamente útiles para interactuar con recursos web desde la línea de comandos en Linux. wget es excelente para descargas directas de archivos y soporta características como descargas recursivas, mientras que curl proporciona más flexibilidad para interactuar con servicios web y manejar diferentes tipos de solicitudes HTTP. Comprender cómo usar estas herramientas de manera eficiente puede mejorar enormemente tu flujo de trabajo y productividad al trabajar con la línea de comandos de Linux.

En conclusión, dominar los comandos wget y curl puede ser un activo valioso para los usuarios que frecuentemente trabajan con interacciones web. Ya sea descargando archivos, accediendo a APIs o extrayendo datos de sitios web, estas herramientas proporcionan mecanismos robustos para lograr tus objetivos directamente desde el terminal.

Si encuentras algo incorrecto en el contenido del artículo, puedes


Comentarios