306

Suppose that we have a full URL of desired file e.g.

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

I would like to go without installing a new software. Is it possible?

Command

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

doesn't work ;)

  • 6
    wget is your friend here :) – cauon Oct 27 '12 at 17:47
  • 10
    wget is perhaps the simplest way but you can also use curl. Read this – dearN Oct 27 '12 at 17:50
  • 16
    Use wget -O hooray "http://domain.com/directory/4?action=AttachFile&do=get&target=file.tgz". You can add -c option to resume download if connection was lost while downloading file. – Sergey Oct 27 '12 at 18:04
  • "hooray" cracked me up LOL – chris loughnane Jan 31 at 16:11
397

Open terminal and type

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

to download the file to the current directory.

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

will download the file to /home/omio/Desktop

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

will download the file to /home/omio/Desktop and give it your NewFileName name.

  • 1
    Beat me to the punch. Dang. But yeah, it's wget [whatever web address]. If you want to choose the location, type cd [local location on your computer.] EXAMPLE: cd /home/omio/Desktop/ | wget http://thecanadiantestbox.x10.mx/CC.zip – Omio Oct 27 '12 at 17:49
  • 4
    @Omio There is no need to run cd. You can just specify output file via -O option. For example: wget -O /home/omio/Desktop/file.tgz "http://domain.com/directory/4?action=AttachFile&do=view&target=file.tgz" – Sergey Oct 27 '12 at 17:59
  • 1
    Your examples will not work. You MUST use quotes when URL contains ampersands. – Sergey Oct 27 '12 at 18:01
  • @Sergey Thanks for the clarification. I haven't had to use wget yet, but I would have to, in the future. – Omio Oct 27 '12 at 18:05
  • ? and & are interpreted by your shell. You need to quote or escape it. Generally, you have a shortcut to paste a quoted or escaped version of the string in the clipboard in your terminal. Be very careful when pasting stuffs inside a terminal. – alecail Oct 27 '12 at 19:10
28

you can do it by using curl .

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

The -O saves the file with the same name as in the url rather than dumping the output to stdout

For more information

  • I can never remember if it's a zero or O – Alexander Mills May 14 at 5:32
  • -O is the alphabetical letter and must be capital, else a log will be generated – Kareem Elsayed Sep 1 at 18:34
20

I use axel and wget for downloading from terminal, axel is download accelerator

syntax

axel

Install via the software center

axel www.example.com/example.zip

wget

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

for more details type man axel, man wget in terminal

  • 6
    how is axel different from wget? – heinrich5991 Oct 27 '12 at 23:58
  • 3
    @heinrich5991 wget is more advanced than axel! – Pranit Bauva Nov 1 '12 at 7:52
9

Just to add more flavor to this question, I'd also recommend that you take a look at this:

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

You could use this to shutdown your computer after your wget command with a ; perhaps or in a bash script file.

This would mean you don't have to stay awake at night and monitor until your download as (un)successfully run.

Read this answer as well

5

the lack of Aria2 mention is just a disservice so with that said, check out Aria2. https://aria2.github.io/

Install it by simply typing in terminal:

sudo apt install aria2

Then simply type this to download the file:

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

You can find more help with aria2 by its man page.

2

I did these steps From Oh-my-zsh,

brew install wget
wget https://github.com/sencha-extjs-examples/QuickStart/archive/master.zip

protected by Community Jan 15 '14 at 8:21

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.