¿Cómo descargar un archivo de un sitio web a través de la terminal?


306

Supongamos que tenemos una URL completa del archivo deseado, por ejemplo

http://domain.com/directory/4?action=AttachFile&do=view&target=file.tgz

Me gustaría ir sin instalar un nuevo software. ¿Es posible?

Mando

 cp  'http://example.com/directory/4?action=AttachFile&do=get&target=file.tgz' hooray

no funciona;)


66
wgetes tu amigo aquí :)
cauon

10
wgetes quizás la forma más simple pero también puedes usarla curl. Lea esto
dearN

16
Utilizar wget -O hooray "http://domain.com/directory/4?action=AttachFile&do=get&target=file.tgz". Puede agregar la -copción para reanudar la descarga si se perdió la conexión al descargar el archivo.
Sergey

"Hurra" me hizo reír LOL
Chris Loughnane

Respuestas:


397

Abrir terminal y escribir

wget "http://domain.com/directory/4?action=AttachFile&do=view&target=file.tgz" 

para descargar el archivo al directorio actual.

wget  -P /home/omio/Desktop/ "http://thecanadiantestbox.x10.mx/CC.zip"

descargará el archivo a /home/omio/Desktop

wget  -O /home/omio/Desktop/NewFileName "http://thecanadiantestbox.x10.mx/CC.zip"

descargará el archivo /home/omio/Desktopy le dará su NewFileNamenombre.


1
Golpéame hasta el golpe. Dang Pero si, lo es wget [whatever web address]. Si desea elegir la ubicación, escriba cd [local location on your computer.] EJEMPLO: cd /home/omio/Desktop/ | wget http://thecanadiantestbox.x10.mx/CC.zip
Omio

44
@ Omio No hay necesidad de correr cd. Simplemente puede especificar el archivo de salida a través de la -Oopción. Por ejemplo:wget -O /home/omio/Desktop/file.tgz "http://domain.com/directory/4?action=AttachFile&do=view&target=file.tgz"
Sergey

1
Tus ejemplos no funcionarán. DEBE usar comillas cuando la URL contiene símbolos de unión.
Sergey

@Sergey Gracias por la aclaración. Todavía no he tenido que usar wget, pero tendría que hacerlo en el futuro.
Omio

? y & son interpretados por su shell. Necesita citarlo o escapar de él. En general, tiene un acceso directo para pegar una versión de la cadena entre comillas o escapado en el portapapeles de su terminal. Tenga mucho cuidado al pegar cosas dentro de una terminal.
alecail

28

puedes hacerlo usando curl.

curl -O http://domain.com/directory/4?action=AttachFile&do=view&target=file.tgz

El -O guarda el archivo con el mismo nombre que en la url en lugar de volcar la salida en stdout

Para más información


Nunca puedo recordar si es un cero o un O
Alexander Mills

-O es la letra alfabética y debe ser mayúscula, de lo contrario se generará un registro
Kareem Elsayed

20

Yo uso axely wgetpara descargar desde la terminal, Axel es el acelerador de descarga

sintaxis

axel

Instalar a través del centro de software

axel www.example.com/example.zip

wget

wget -c www.example.com/example.zip

para más detalles escriba man axel, man wgeten terminal


66
¿Cómo es axeldiferente de wget?
heinrich5991

3
¡@ heinrich5991 wget es más avanzado que axel!
Pranit Bauva

9

Solo para agregar más sabor a esta pregunta, también recomendaría que eche un vistazo a esto:

history -d $((HISTCMD-1)) && echo '[PASSWORD]' | sudo -S shutdown now

Puede usar esto para apagar su computadora después de su wgetcomando con ;quizás o en un basharchivo de script.

Esto significa que no tiene que permanecer despierto por la noche y monitorear hasta que su descarga se ejecute (sin) correctamente.

Lea esta respuesta también


5

la falta de mención de Aria2 es solo un mal servicio, así que dicho esto, echa un vistazo a Aria2. https://aria2.github.io/

Instálelo simplemente escribiendo en la terminal:

sudo apt install aria2

Luego simplemente escriba esto para descargar el archivo:

aria2c http://example.com/directory/4?action=AttachFile&do=get&target=file.tgz

Puedes encontrar más ayuda con aria2su manpágina.


2

Hice estos pasos de Oh-my-zsh,

brew install wget
wget https://github.com/sencha-extjs-examples/QuickStart/archive/master.zip
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.