[linux] How do I download a file from the internet to my linux server with Bash

I recently had to upgrade to a VPS server (HostGator Linux) because I wanted to run a script that was a bit more complicated than the regular PHP db manipulation. I'm trying to install a JDK and Apache Ant (if it matters, for compiling Android Apps on server).

I watched tutorials on Linux Bash and started using it. I am currently trying to install Java (with JDK and JRE) on to the server.

I am following the tutorial on this page: http://www.oracle.com/technetwork/java/javase/install-linux-64-self-extracting-142068.html

However, I don't know what to do at this line:

  1. Download and check the download file size.

    You can download to any directory that you can write to.

How do I download Java from the command line?

If it matters, I am running CentOS v5.8

This question is related to linux centos

The answer is


Using wget

wget -O /tmp/myfile 'http://www.google.com/logo.jpg'

or curl:

curl -o /tmp/myfile 'http://www.google.com/logo.jpg'

You can use the command wget to download from command line. Specifically, you could use

wget http://download.oracle.com/otn-pub/java/jdk/7u10-b18/jdk-7u10-linux-x64.tar.gz

However because Oracle requires you to accept a license agreement this may not work (and I am currently unable to test it).


I guess you could use curl and wget, but since Oracle requires you to check of some checkmarks this will be painfull to emulate with the tools mentioned. You would have to download the page with the license agreement and from looking at it figure out what request is needed to get to the actual download.

Of course you could simply start a browser, but this might not qualify as 'from the command line'. So you might want to look into lynx, a text based browser.