Cómo descargar archivos usando curl

curl es una herramienta que permite transferir datos desde y hacia un servidor usando uno de los protocolos soportados: HTTP, HTTPS, FTP, FTPS, SMB ... (consulte el manual de curl para ver una lista de los protocolos soportados). curl además soporta HTTP POST, autenticación, cookies, metalinks, descarga de ficheros y más.

En muchas ocaciones curl se usa como un administrador de descarga ya que permite pausar/reiniciar la descarga de un fichero a partir del último byte descargado.

Descargar un solo fichero

$ curl -# -C - -O http://dl-cdn.alpinelinux.org/alpine/v3.8/releases/x86_64/alpine-standard-3.8.0-x86_64.iso

Descarga el ISO de Alpine al DIR actual.

Opciones

-#: Barra de progreso.
-C -: Reinicia la descarga a partir de último byte descargado.
-O: Salva el fichero al DIR actual con el mimo nombre remoto: alpine-standard-3.8.0-x86_64.iso.

Descargar varios ficheros a la vez

Using xargs and curl (al estilo wget -i)

$ xargs -a urls.txt -I{} curl -# -O {}

xargs lee linea a linea el fichero urls.txt y le pasa cada línea a curl, nótese la opción: -I{} de xargs y la opción -O {} de curl.

Formato del fichero urls.txt

https://download.libsodium.org/libsodium/releases/LATEST.tar.gz
https://download.libsodium.org/libsodium/releases/libsodium-1.0.16.tar.gz.sig

Usando la opción -K

$ curl -# -K urls.txt

Formato del fichero urls.txt

url = "url1"
output = "nom-fich1"

url = "url2"
output = "nom-fich2"

Opción -K, leyendo de la entreda estándar y usando HEREDOC

$ curl -# -K - <<URL
    url = "https://download.libsodium.org/libsodium/releases/libsodium-1.0.16.tar.gz"
    output = "libsodium-1.0.16.tar.gz"

    url = "https://download.libsodium.org/libsodium/releases/libsodium-1.0.16.tar.gz.sig"
    output="libsodium-1.0.16.tar.gz.sig"
URL

Lectura recomendada

  • man curl
Los tutoriales aquí en LibreByte están disponible bajo una licencia de software libre. Si le gusta mi trabajo considere:
Comprar un Hosting/VPS o Servidor Dedicado en MCKHost

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.