Daniel Stenberg, el autor de la utilidad para recibir y enviar datos por la red curl, ha anunciado la incorporación de la utilidad wcurl al proyecto. Ahora, la utilidad wcurl es reconocida como un proyecto oficial de curl, pero su desarrollo continuará bajo los mismos mantenedores en un repositorio separado, independientemente de curl. La utilidad es desarrollada por uno de los mantenedores de Debian, que supervisa el paquete con curl. En Debian Testing, Debian Unstable y en los backports de Debian 12, la utilidad wcurl ya se incluye en el paquete curl. El código de la utilidad wcurl está escrito en Shell y se distribuye bajo la licencia Curl (versión de la licencia MIT).
La nueva utilidad es un envoltorio sobre curl, que implementa una interfaz simplificada para la descarga de archivos, similar a cómo se inicia la utilidad wget y evita que el usuario tenga que recordar los parámetros específicos para ejecutar curl (por ejemplo, a muchos les resulta más fácil instalar wget que tener que escribir cada vez «curl -L -O -C —remote-time»). A diferencia de curl, la utilidad wcurl permite especificar múltiples enlaces para descargar, maneja automáticamente las redirecciones y realiza intentos de descarga en caso de fallos.
En lugar de enviar la salida al flujo estándar, wcurl guarda la información descargada en archivos, cuyos nombres se eligen en función del contenido de los enlaces especificados o del nombre devuelto el servidor, y el tiempo de modificación del archivo se establece en el valor que el servidor devuelve en el encabezado HTTP Last-modified. Si ya existe un archivo con el nombre elegido, wcurl no lo sobrescribe, sino que añade un número adicional al nombre. Al especificar varios enlaces, se asegura la descarga paralela de los mismos.
La utilidad también desactiva el procesamiento de sustituciones «{}» y «[]» en las URL y permite el uso de espacios en los enlaces, reemplazándolos automáticamente por el formato «%xx». Con la opción «—curl-options», se le da al usuario la posibilidad de especificar cualquier opción de curl, y a través de la opción «—dry-run» se define la cadena para ejecutar curl sin realizar realmente la operación.
El anuncio también menciona la utilidad trurl, creada por el autor de curl el año pasado, que complementa a curl con capacidades para analizar y manipular URL. Con la utilidad trurl, se pueden realizar rápidamente en scripts acciones como la sustitución del nombre del host, páginas y parámetros individuales en un enlace, la extracción del host y la ruta de un enlace, y la conversión de URL en una representación separada de elementos en formato JSON. El código de trurl está escrito en C y Perl, y se distribuye bajo la licencia de Curl.
Fuente: opennet.ru
