¿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?
¿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?
Respuestas:
Prueba wget en lugar de curl: wget http://github.com/ziyaddin/xampp/archive/master.zip
wgetlugar de curl?
unzipel archivo descargado con curl, y funcionó bien conwget
Puedes usar:
curl https://github.com/ziyaddin/xampp/archive/master.zip -O -J -L
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.zip
Guarda como: MyFilename.zip
Nota: (GitHub admite SSL - uso https://)
También puede usar un curlrc archivo de configuración o un alias que el comando CURL use curl -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:
No hay ningún intento de decodificar% -secuencias (todavía) en el nombre de archivo proporcionado, por lo que esta opción puede proporcionarle nombres de archivo bastante inesperados.
ADVERTENCIA : ejerza el uso juicioso de esta opción, especialmente en Windows. Un servidor no autorizado podría enviarle el nombre de un archivo DLL u otro archivo que Windows o algún software de terceros podría cargar automáticamente.
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 wget
Para tu propósito:
wget http://github.com/ziyaddin/xampp/archive/master.zip
Tenga en cuenta que el archivo .zip se guardará en el directorio actual en el que se encuentre.
wgetover of curl. Para cualquiera que se pregunte las diferencias entre los dos, vea aquí .
curlquien también contribuye wgeten 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.com
Para 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.zip
"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.
bueno, puedes usar Axel también. Axel es un acelerador de descarga de línea de comando ligero. Es compatible HTTP, HTTPS, FTPy FTPSprotocolos. Es una alternativa agradable y más rápida.
instalar axelusando:
apt-get install axel
luego descargue su archivo:
axel http://github.com/ziyaddin/xampp/archive/master.zip
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:
sudo curl -L https://github.com/CISOfy/lynis/archive/master.zip --output /etc/lynis.zip
Nota: Use sudo si no tiene permisos para escribir en la carpeta de destino.