I am downloading a file using the wget
command. But when it downloads to my local machine, I want it to be saved as a different filename.
For example: I am downloading a file from www.examplesite.com/textfile.txt
I want to use wget
to save the file textfile.txt
on my local directory as newfile.txt
. I am using the wget
command as follows:
wget www.examplesite.com/textfile.txt
wget -O newfile.txt
.
wget -o
will output log information to a file. wget -O
will output the downloaded content. man wget
will tell you all of this and more.
Use the -O file
option.
E.g.
wget google.com
...
16:07:52 (538.47 MB/s) - `index.html' saved [10728]
vs.
wget -O foo.html google.com
...
16:08:00 (1.57 MB/s) - `foo.html' saved [10728]
Also notice the order of parameters on the command line. At least on some systems (e.g. CentOS 6):
wget -O FILE URL
works. But:
wget URL -O FILE
does not work.
You would use the command Mechanical snail listed. Notice the uppercase O. Full command line to use could be:
wget www.examplesite.com/textfile.txt --output-document=newfile.txt
or
wget www.examplesite.com/textfile.txt -O newfile.txt
Hope that helps.
--output-document=newfile.txt
is what worked for me. All attempts to use -O failed with the error Resolving webmin_1.630_all.deb (webmin_1.630_all.deb)... failed: Name or service not known.
wget -O yourfilename.zip remote-storage.url/theirfilename.zip
will do the trick for you.
Note:
a) its a capital O.
b) wget -O filename url
will only work. Putting -O
last will not.
Either curl
or wget
can be used in this case. All 3 of these commands do the same thing, downloading the file at http://path/to/file.txt and saving it locally into "my_file.txt":
wget http://path/to/file.txt -O my_file.txt # my favorite--it has a progress bar
curl http://path/to/file.txt -o my_file.txt
curl http://path/to/file.txt > my_file.txt
Notice the first one's -O
is the capital letter "O".
The nice thing about the wget
command is it shows a nice progress bar.
You can prove the files downloaded by each of the 3 techniques above are exactly identical by comparing their sha512 hashes. Running sha512sum my_file.txt
after running each of the commands above, and comparing the results, reveals all 3 files to have the exact same sha hashes (sha sums), meaning the files are exactly identical, byte-for-byte.
See also: How to capture cURL output to a file?
Using CentOS Linux I found that the easiest syntax would be:
wget "link" -O file.ext
where "link"
is the web address you want to save and "file.ext"
is the filename and extension of your choice.
Success story sharing
wget -O file http://foo
is intended to work likewget -O - http://foo > file
; file will be truncated immediately, and all downloaded content will be written there."wget
in console and append it to file. For examplewget -O - -o /dev/null http://google.com >> foo.html
. Reference