¿Cómo puedo descargar un archivo ZIP con el comando curl? Lo intenté curl -sO, pero ocurrió un error. Quiero descargar el archivo zip de la dirección:
http://github.com/ziyaddin/xampp/archive/master.zip
pero no puedo ¿Qué debo escribir?
downloads
command-line
zip
curl
Ziyaddin Sadigov
fuente
fuente

Respuestas:
Solía
curl -LOy funcionó bien.wgettambién funcionafuente
Prueba wget en lugar de curl:
wget http://github.com/ziyaddin/xampp/archive/master.zipfuente
wgetlugar decurl?unzipel archivo descargado concurl, y funcionó bien conwgetPuedes usar:
Guarda como:
xampp-cli-master.zip-Len caso de que se encuentre una redirección.-Opara nombres de archivos remotos (master.zip)-J(use with-O) para permitir el nombre de archivo de encabezado remoto (xampp-cli-master.zip)O use
-opara crear su propio nombre de archivo:curl https://github.com/ziyaddin/xampp/archive/master.zip -L -o MyFilename.zipGuarda como:
MyFilename.zipNota: (GitHub admite SSL - uso
https://)También puede usar un
curlrcarchivo de configuración o un alias que el comando CURL usecurl -O -Lpara permitir que funcione de manera similar a WGET.Consultar: https://curl.haxx.se/docs/manpage.html#OPTIONS (Ver: -O , -J , -L , -o )
Tenga en cuenta la advertencia de usar CURL con la opción -J:
fuente
Si desea descargar el archivo, use
wget [option]... [URL]...en su lugar.Para obtener más información sobre las opciones, simplemente escriba esto en su Terminal:
man wgetPara tu propósito:
wget http://github.com/ziyaddin/xampp/archive/master.zipTenga en cuenta que el archivo .zip se guardará en el directorio actual en el que se encuentre.
fuente
wgetover ofcurl. Para cualquiera que se pregunte las diferencias entre los dos, vea aquí .curlquien también contribuyewgeten un papel menor. Una omisión evidente (basada en mi pequeño proyecto) es que wget es 10 veces más rápido que el rizo (<2 segundos frente a 12 segundos) recuperando las horas de salida y puesta del sol desdehttps://www.timeanddate.comPara descargar archivos en GitHub (o en cualquier otro sitio que realice redireccionamientos)
curl, debe pasar-L(Seguir redireccionamientos), así que use:curl -L http://github.com/ziyaddin/xampp/archive/master.zip -o xampp.zipfuente
"curl -LOk" lo hace usando protocolos inseguros (-k), deshabilitando las comprobaciones de certificados SSL (que fallan debido a que la ruta incorrecta no coincide con el certificado), y crea el archivo de salida usando el nombre de archivo (-O) propuesto desde el servidor remoto (También inseguro). En mi opinión, el servidor debería estar mejor configurado para crear alias de redireccionamiento local donde sea necesario, para evitar tener que pasar esta parte no conforme de la URL. Pero la redirección se realiza utilizando solo una redirección HTTP (error HTTP 30x), lo que provoca problemas de curvatura que no siguen (por defecto) esta redirección (no segura), y la opción (-k) desactiva esta comprobación de seguridad. Entonces, en lugar de usar redireccionamientos HTTP (movidos permanentemente), agregue algún enlace interno en el sistema de archivos del servidor. Si esto es necesario porque la URL está alojada en otro servidor físico sin acceso directo entre sus sistemas de archivos, debe usar otro nombre DNS para este host, de modo que los clientes consulten el correcto directamente, sin ningún redireccionamiento. Luego arregle sus páginas web (puede usar los registros de su servidor web para ver dónde se devuelven las redirecciones HTTP 30x y qué páginas web deben verificarse y actualizarse). Obligar a los clientes a usar protocolos no seguros / no verificados no es una buena opción.
Entonces, este es definitivamente un problema de muy mala configuración en el servidor web: intente contactar a su administrador para solucionarlo.
fuente
bueno, puedes usar Axel también. Axel es un acelerador de descarga de línea de comando ligero. Es compatible
HTTP, HTTPS, FTPyFTPSprotocolos. Es una alternativa agradable y más rápida.instalar
axelusando:luego descargue su archivo:
fuente
Use la opción
-Lpara seguir los redireccionamientos, también puede usar la--outputopción para dar una ruta y un nombre al archivo zip. Por ejemplo:Nota: Use sudo si no tiene permisos para escribir en la carpeta de destino.
fuente