Cómo descargar archivos con cURL

El comando cURL es una herramienta de línea de comandos potente y versátil que permite transferir datos desde o hacia un servidor utilizando diversos protocolos, como HTTP, HTTPS, FTP y SFTP, entre otros. Es especialmente útil para descargar archivos de manera eficiente y automatizada en sistemas basados en Unix y Linux, aunque también está disponible para Windows. A continuación, se explica cómo utilizar cURL para descargar archivos y se detallan algunas de sus opciones más comunes.

Instalación de cURL

Antes de comenzar, es necesario asegurarse de que cURL esté instalado en el sistema:

  • En distribuciones basadas en Debian/Ubuntu: sudo apt-get update sudo apt-get install curl
  • En distribuciones basadas en Red Hat/Fedora/CentOS: sudo dnf install curl
  • En macOS (si no está preinstalado): brew install curl

Uso básico para descargar archivos

La sintaxis general para descargar un archivo es:

curl -O [URL_del_archivo]
  • Ejemplo:Para descargar un archivo llamado archivo.zip desde un servidor: curl -O https://ejemplo.com/archivo.zip La opción -O (mayúscula) indica a cURL que guarde el archivo con el mismo nombre que tiene en el servidor.

Especificar un nombre de archivo personalizado

Si se desea guardar el archivo con un nombre diferente, se puede utilizar la opción -o (minúscula):

curl -o nuevo_nombre.zip https://ejemplo.com/archivo.zip

Reanudar descargas interrumpidas

Para reanudar una descarga que ha sido interrumpida, se utiliza la opción -C -:

curl -C - -O https://ejemplo.com/archivo.zip

Descargar varios archivos a la vez

Es posible descargar múltiples archivos en una sola línea de comandos:

curl -O https://ejemplo.com/archivo1.zip -O https://ejemplo.com/archivo2.zip

Autenticación básica

Si el servidor requiere autenticación, se pueden proporcionar las credenciales con la opción -u:

curl -u usuario:contraseña -O https://ejemplo.com/archivo_protegido.zip

Descargar archivos FTP

Para descargar archivos desde un servidor FTP:

curl -O ftp://servidorftp.com/archivo.txt

Si el servidor FTP requiere autenticación:

curl -u usuario:contraseña -O ftp://servidorftp.com/archivo.txt

Limitar la velocidad de descarga

Para limitar la velocidad de descarga y no saturar el ancho de banda:

curl --limit-rate 500k -O https://ejemplo.com/archivo.zip

Este comando limita la velocidad de descarga a 500 kilobytes por segundo.

Mostrar progreso y detalles de la transferencia

Para obtener información detallada sobre la descarga, se puede utilizar la opción -# o --progress-bar:

curl -# -O https://ejemplo.com/archivo.zip

Especificar encabezados personalizados

En casos donde se necesite enviar encabezados HTTP personalizados, se utiliza la opción -H:

curl -H "User-Agent: MiNavegador" -O https://ejemplo.com/archivo.zip

Descargar archivos en segundo plano

Para ejecutar la descarga en segundo plano y liberar la terminal:

curl -O https://ejemplo.com/archivo.zip &

Uso de proxies

Si se requiere pasar por un proxy:

curl -x http://proxyservidor:puerto -O https://ejemplo.com/archivo.zip

Comprobación de certificados SSL

Para ignorar errores en certificados SSL (no recomendado por motivos de seguridad):

curl -k -O https://ejemplo.com/archivo.zip

cURL es una herramienta esencial para cualquier administrador de sistemas o desarrollador que necesite transferir datos desde o hacia un servidor. Su versatilidad y compatibilidad con múltiples protocolos la convierten en una opción preferida para automatizar tareas de descarga y manejo de archivos. Al dominar cURL, se pueden optimizar procesos y mejorar la eficiencia en la gestión de recursos en línea.

Referencias

  • Página oficial de cURL: https://curl.se/
  • Manual de cURL: Ejecutar man curl en la terminal para acceder a la documentación detallada.

Suscríbete al boletín SysAdmin

Este es tu recurso para las últimas noticias y consejos sobre administración de sistemas, Linux, Windows, cloud computing, seguridad de la nube, etc. Lo enviamos 2 días a la semana.

Scroll al inicio
×