wcurl: la herramienta sencilla de cURL para descargar archivos desde la terminal
¿Alguna vez has querido descargar archivos desde la terminal sin complicarte la vida con opciones y parámetros difíciles de recordar? Para muchos usuarios de Linux y otros sistemas operativos basados en Unix, la línea de comandos es una herramienta fundamental y, aunque existen programas populares como wget y curl para descargas, a menudo la cantidad de opciones de curl puede resultar intimidante. Aquí es donde entra en juego wcurl, el aliado perfecto para quienes buscan simplicidad sin sacrificar potencia.
wcurl es una utilidad pensada para facilitar la descarga de archivos desde URLs sin necesidad de memorizar una larga lista de parámetros. Este pequeño pero potente script se ha ganado la simpatía de la comunidad, sobre todo entre aquellos que quieren rapidez y eficacia en su flujo de trabajo diario en la terminal. En este artículo vamos a ver, de forma exhaustiva y cercana, todo lo que necesitas saber sobre wcurl: qué es, cómo instalarlo, cuáles son sus ventajas y funciones principales, cómo se usa en diferentes distribuciones y las particularidades que lo hacen destacar sobre otras alternativas.
¿Qué es wcurl y para qué sirve?
La versión de curl con W delante es una sencilla interfaz en forma de script que actúa como envoltorio (wrapper) para curl, facilitando la descarga de archivos de Internet sin requerir conocimientos avanzados sobre los parámetros de curl. Su principal misión es que no tengas que recordar las opciones necesarias para una descarga sencilla: simplemente indicas la URL o las URLs que quieras descargar y wcurl se encarga de aplicar los mejores ajustes automáticamente.
El desarrollador Samuel Henrique, junto a otros colaboradores, impulsó este proyecto tras detectar que muchos usuarios recurrían a wget cuando querían descargar archivos de forma rápida, precisamente porque curl requiere recordar varios parámetros incluso para una operación simple. wcurl fue pensado como una respuesta a este problema, para que descargar archivos vuelva a ser una tarea directa y cómoda.
Ventajas y características principales de wcurl
- No necesitas aprender una nueva sintaxis: basta con escribir ‘wcurl’ seguido de la URL y el script se encarga del resto.
- Descargas múltiples en paralelo: si tu versión de curl es 7.66.0 o superior, wcurl permite descargar varios archivos a la vez.
- Respeta redirecciones y aplica nombres automáticos: sigue redireccionamientos para obtener el archivo final y asigna nombres de archivo lógicos.
- Evita sobreescribir archivos: si tienes curl 7.83.0 o más reciente, wcurl utiliza la opción ‘no-clobber’ para que no pierdas archivos preexistentes.
- Recupera ficheros interrumpidos, realiza reintentos automáticos, y guarda el timestamp exacto de la descarga si lo facilita el servidor.
- Desactiva el globbing de URLs de curl: así, los caracteres {} y [] no tendrán un significado especial.
- Codifica y decodifica nombres de archivo correctamente: por ejemplo, convierte espacios en %20 y, al guardar, los recupera como espacios normales si así lo quieres.
- Asigna «index.html» si la URL no contiene nombre de archivo: útil para descargar páginas web completas.
¿Qué diferencia a wcurl de curl y wget?
La principal diferencia de wcurl respecto a curl es que está pensado para casos de uso muy específicos: descargar archivos sin complicaciones, aplicando «sane defaults» (ajustes inteligentes por defecto) sin que el usuario tenga que intervenir. Si bien wget ha sido la opción elegida por quienes prefieren la sencillez, wcurl permite disfrutar de la potencia de curl pero con la misma rapidez y facilidad de uso que wget.
¿Para quién está pensado wcurl? Prácticamente para cualquier usuario de la terminal: desde administradores de sistemas y programadores que descargan scripts y datos a diario, hasta usuarios que puntualmente necesitan descargar de forma simple sin temer equivocarse con los parámetros.
Instalación de wcurl: cómo tenerlo en tu sistema
La instalación de wcurl es muy directa, y cada vez está más integrada con los paquetes de curl de las principales distribuciones. A partir de curl 8.14.0, wcurl viene incluido de serie en los archivos fuente de curl; si compilas o instalas curl desde los repositorios recientes, tendrás wcurl listo para usar.
Instalación con el paquete de curl
- Debian y derivados: Desde la versión 8.8.0-2 del paquete curl en Debian, wcurl ya viene instalado (en Debian unstable desde julio de 2024, y previsto para testing y backports).
- Otras distribuciones como Ubuntu, Kali, y Fedora: Los paquetes recientes también pueden incluir wcurl junto a curl. En caso de duda, consulta el gestor de paquetes o la documentación.
- Distribuciones donde aún no está disponible: Puedes instalar wcurl manualmente descargando el script oficial desde GitHub.
Instalación manual paso a paso
- Descarga el script desde el repositorio oficial:
- Con curl:
curl -fLO https://github.com/curl/wcurl/releases/latest/download/wcurl
- O con wget:
wget https://raw.githubusercontent.com/Debian/wcurl/main/wcurl
- Con curl:
- Haz el archivo ejecutable:
chmod +x wcurl
- Mueve el archivo a una ruta incluida en tu PATH, por ejemplo
/usr/bin
:sudo mv wcurl /usr/bin/wcurl
Y ya puedes empezar a usar wcurl.
Pronunciación y curiosidades del nombre
El nombre surge de la contracción entre wget y curl, aunque no tiene un significado literal. Se pronuncia como «double-u curl». Curiosamente, en los primeros debates se consideró llamarlo «curld», pero se descartó para evitar confusiones con «daemons». Finalmente fue sugerido por la comunidad y rápidamente adoptado.
Cómo utilizar wcurl: ejemplos prácticos
Usar wcurl es facilísimo. Simplemente indicas las URLs que quieres descargar, y opcionalmente aplicas parámetros adicionales si lo ves necesario.
Descarga básica de un archivo
wcurl ejemplo.com/archivo.txt
Descargar varios archivos en paralelo
wcurl ejemplo.com/archivo1.txt ejemplo.com/archivo2.txt
Paso de opciones adicionales a curl
wcurl --curl-options="--progress-bar --http2" ejemplo.com/archivo.txt
Esto pasa los flags –progress-bar y –http2 a la ejecución de curl interna, permitiendo mayor personalización.
Reanudar una descarga interrumpida
wcurl --curl-options="--continue-at -" ejemplo.com/archivo.txt
Uso de opciones de salida y ayuda
- Ver las opciones de ayuda:
wcurl --help
- Indicar ruta de salida personalizada:
wcurl -o "-o archivo_destino.txt" https://ejemplo.com/archivo.txt
Opciones y parámetros disponibles en wcurl
Además de la sencillez habitual, wcurl permite cierto grado de personalización gracias a que puedes pasarle opciones avanzadas de curl:
- –curl-options=<CURL_OPTIONS>: Permite indicarle cualquier opción soportada por curl. Puedes usarla varias veces si lo necesitas.
- -o, -O, –output, –output=<PATH>: Define la ruta/salida del fichero descargado en vez de tomarla de la URL. Si descargas varios archivos y usas la misma ruta, añade un número secuencial al final (si curl >= 7.83.0).
- –no-decode-filename: No decodifica el nombre del fichero, útil si prefieres conservar la codificación URL (por ejemplo, los espacios como %20).
- –dry-run: Solo muestra el comando curl que se ejecutaría, sin realizar la descarga real.
- -V, –version: Muestra la versión de wcurl instalada.
- -h, –help: Ayuda y listado de opciones disponibles.
Recuerda que los parámetros que no sean opciones, wcurl los interpreta como URLs a descargar. La codificación de espacios y otros caracteres especiales está gestionada internamente.
Integración y disponibilidad de wcurl en distintas distribuciones
- Debian y derivados: wcurl viene con curl a partir de 8.8.0-2 (julio 2024 en unstable, pronto en testing y backports para versiones estables).
- Fedora, Ubuntu, Kali y otras: Las versiones recientes de curl también pueden incluir wcurl. Si tu distribución aún no lo integra, puedes seguir la instalación manual.
- En distribuciones donde curl se actualiza regularmente: wcurl suele estar disponible en cuanto llega a testing/rolling release.
- Para distribuciones estancadas o versiones antiguas: es probable que debas instalar wcurl desde el script oficial hasta que llegue vía repositorio.
¿Y si necesito funcionalidades más avanzadas?
Esta propuesta está pensado para descargas simples. Si requieres operaciones más complejas (autenticación avanzada, scripts personalizados, operaciones de subida…), es mejor recurrir a curl directamente, ya que wcurl solo reenvía los parámetros adicionales pero no amplía la funcionalidad de curl.
Errores, soporte y colaboración
Si te encuentras con algún problema específico de wcurl (algo que no ocurre usando curl directamente), puedes reportarlo en el repositorio oficial de GitHub. El proyecto se mantiene como software libre bajo la licencia de curl, con contribuciones activas. Además, puedes unirte a salas de chat como la de Matrix para interactuar con los desarrolladores.
Buenas prácticas y consejos tras instalar wcurl
- Prueba tus descargas con la opción –dry-run si no estás seguro de cómo funcionará: así evitarás sorpresas, sobreescrituras o descargas no deseadas.
- Recuerda que cualquier opción avanzada que aceptaría curl puede pasarse a wcurl a través de –curl-options: es una vía flexible por si necesitas afinar el comportamiento.
- Para mantener tus scripts POSIX-compliant y limpios, ten en cuenta que wcurl está programado de acuerdo a los estándares para maximizar su compatibilidad.
Preguntas frecuentes sobre wcurl
- ¿Qué ocurre si mi sistema no tiene wcurl tras instalar curl? Comprueba la versión de curl instalada. Si es anterior a la integración de wcurl en tu distribución, instala el script manualmente siguiendo los pasos mencionados.
- ¿Puedo usar wcurl en sistemas macOS? Si tienes curl actualizado o puedes instalar scripts personalizados, sí. Asegúrate de que tu versión de curl es compatible si quieres aprovechar las descargas en paralelo y otras mejoras.
- ¿Se puede actualizar wcurl sin actualizar todo curl? Sí, aunque se recomienda mantener ambos actualizados. Siempre puedes sobrescribir el script manualmente si necesitas alguna función o corrección reciente.
- ¿Por qué usar wcurl en vez de wget? wcurl permite usar el motor de curl, que suele estar más presente y actualizado en sistemas Unix, además de ofrecer una sintaxis más sencilla con todos los beneficios de la experiencia curl.
La constante evolución de esta herramienta, el cuidado por adaptarse a las necesidades reales de los usuarios y su integración progresiva en las principales distribuciones lo están convirtiendo en la opción preferida para descargas simples y rápidas desde la terminal. Si valoras la eficiencia, la sencillez y la potencia bajo el capó, merece la pena probarlo y sumarlo a tu repertorio de herramientas diarias.