Categories: Development

The basics of GNU Wget

GNU Wget is an open source software for downloading files with compatibility with the many popular internet protocols through command line use.

Wget is a popular tool and highly versatile, however it can be confusing or overwhelming but here are some commands to get started.

If you’re using Windows you can download Wget here or for Linux based systems simply do

sudo apt install wget

or

yum install wget -y

Downloading a website

wget -r www.website.com

-r stands for recursive and goes 5 levels deep as default, to set levels deep do as

wget -r -20 www.everydaylinuxuser.com

This is (up to) 20 levels deep.

Download a file

wget saveas downloadurl
wget /save/here/file.zip www.website.com/filelinktodownload.zip

Download from folder

wget -r --no-parent /save/here -A jpeg,jpg,gif,png https://website/images

--no-parent means Wget wont enter directories above the listed one, however as we have the -r option Wget will go into directories below the listed one.

-A Means accept. Follow this with file extensions that you want to download. In the example above Wget will only download images (.jpeg, .jpg, .gif, .png).

Another option is -R meaning Reject. It is the opposite of accept and can be use to download all file except say .bmp, .html and .tmp which seems to be unwanted in cases.

Download list from text file

If you have a text file that has a list of links like:

link1
link2
link3
link4

You can download them all by using -i which means list

wget -i downloadlist.txt /save/here

Download in background

For Linux systems to get Wget running in the background

wget -bqc /save/here/file.zip https://website.com/file.zip

-b is background, -q turns of output and -c is for resuming broken downloads.

Download with authentication

To download from FTP with a username and password use the following, replacing with your credentials.

--user=USERNAMEHERE --password=PASSWORDHERE

Set user agent

A user agent for requests can be set with -U

-U Mozilla/5.0

Skip SSL checking

 

--no-check-certificate

Only download from https links

--https-only

 

A full documentation on Wget can be viewed here.

Share

Recent Posts

Kennington reservoir drained drone images

A drained and empty Kennington reservoir images from a drone in early July 2024. The…

1 year ago

Merrimu Reservoir drone images

Merrimu Reservoir from drone. Click images to view larger.

1 year ago

FTP getting array of file details such as size using PHP

Using FTP and PHP to get an array of file details such as size and…

2 years ago

Creating Laravel form requests

Creating and using Laravel form requests to create cleaner code, separation and reusability for your…

2 years ago

Improving the default Laravel login and register views

Improving the default Laravel login and register views in such a simple manner but making…

2 years ago

Laravel validation for checking if value exists in the database

Laravel validation for checking if a field value exists in the database. The validation rule…

2 years ago