In the last article, we have covered few useful tools like ‘rTorrent‘, ‘wget‘, ‘cURL‘, ‘w3m‘, and ‘Elinks‘. We got lots of responses to cover few other tools of the same genre, if you’ve missed the first part you can go through it.
This article aims to make you aware of several other Linux command Line browsing and downloading applications, which will help you browse and download files within the Linux shell.
Links is an open-source web browser written in C programming Language. It is available for all major platforms viz., Linux, Windows, OS X, and OS/2.
This browser is text-based as well as graphical. The text-based links web browser is shipped by most of the standard Linux distributions by default. If links not installed in your system by default you may install it from the repo. Elinks is a fork of links.
$ sudo apt install links (on Debian, Ubuntu, & Mint) $ sudo dnf install links (on Fedora, CentOS & RHEL) $ sudo pacman -S links (on Arch and Manjaro) $ sudo zypper install links (on OpenSuse)
After installing links, you can browse any websites within the terminal as shown below in the screencast.
$ links www.tecmint.com
Use UP and DOWN arrow keys to navigate. The right arrow Key on a link will redirect you to that link and the Left arrow key will bring you back to the last page. To QUIT press q.
Here is how it seems to access Tecmint using the links tool.
If you are interested in installing the GUI of links, you may need to download the latest source tarball (i.e. version 2.22) from http://links.twibright.com/download/.
Alternatively, you may use the following wget command to download and install as suggested below.
$ wget http://links.twibright.com/download/links-2.22.tar.gz $ tar -xvf links-2.22.tar.gz $ cd links-2.22 $ ./configure --enable-graphics $ make $ sudo make install
Note: You need to install packages (libpng, libjpeg, TIFF library, SVGAlib, XFree86, C Compiler and make), if not already installed to successfully compile the package.
To install links2 on Linux.
$ sudo apt install links2 (on Debian, Ubuntu, & Mint) $ sudo dnf install links2 (on Fedora, CentOS & RHEL) $ sudo pacman -S links2 (on Arch and Manjaro) $ sudo zypper install links2 (on OpenSuse)
To start links2 in command-line or graphical mode, you need to use the
-g an option that displays the images.
$ links2 tecmint.com OR $ links2 -g tecmint.com
A text-based web browser released under GNU GPLv2 license and written in ISO C. lynx is a highly configurable web browser and Savior for many sysadmins. It has the reputation of being the oldest web browser that is being used and still actively developed.
To install lynx on Linux.
$ sudo apt install lynx (on Debian, Ubuntu, & Mint) $ sudo dnf install lynx (on Fedora, CentOS & RHEL) $ sudo pacman -S lynx (on Arch and Manjaro) $ sudo zypper install lynx (on OpenSuse)
After installing lynx, type the following command to browse the website as shown below in the screencast.
$ lynx www.tecmint.com
If you are interested in knowing a bit more about links and lynx web browser, you may like to visit the below link:
youtube-dl is a platform-independent application that can be used to download videos from youtube and a few other sites. Written primarily in python and released under GNU GPL License, the application works out of the box. (Since youtube doesn’t allow you to download videos, it may be illegal to use it. Check the laws before you start using this.)
To install youtube-dl in Linux.
$ sudo apt install youtube-dl (on Debian, Ubuntu, & Mint) $ sudo dnf install youtube-dl (on Fedora, CentOS & RHEL) $ sudo pacman -S youtube-dl (on Arch and Manjaro) $ sudo zypper install youtube-dl (on OpenSuse)
After installing, try to download files from the Youtube site, as shown in the below screencast.
$ youtube-dl https://www.youtube.com/watch?v=ql4SEy_4xws
If you are interested in knowing more about youtube-dl you may like to visit the below link:
fetch is a command-line utility for a Unix-like operating system that is used for URL retrieval. It supports a lot of options like fetching ipv4 only address, ipv6 only address, no redirect, exit after successful file retrieval request, retry, etc.
Fetch can be Downloaded and installed from the link below
But before you compile and run it, you should install HTTP Fetcher. Download HTTP Fetcher from the link below.
Axel is a command-line-based download accelerator for Linux. Axel makes it possible to download a file at a much faster speed through a single connection request for multiple copies of files in small chunks through multiple http and FTP connections.
To install Axel in Linux.
$ sudo apt install axel (on Debian, Ubuntu, & Mint) $ sudo dnf install axel (on Fedora, CentOS & RHEL) $ sudo pacman -S axel (on Arch and Manjaro) $ sudo zypper install axel (on OpenSuse)
After axel installed, you may use the following command to download any given file, as shown in the screencast.
$ axel https://releases.ubuntu.com/20.04.2.0/ubuntu-20.04.2.0-desktop-amd64.iso
aria2 is a command-line-based download utility that is lightweight and supports multi-protocol (HTTP, HTTPS, FTP, BitTorrent, and Metalink). It can use meta link files to simultaneously download ISO files from more than one server. It can serve as a Bit torrent client as well.
To install aria2 in Linux.
$ sudo apt install aria2 (on Debian, Ubuntu, & Mint) $ sudo dnf install aria2 (on Fedora, CentOS & RHEL) $ sudo pacman -S aria2 (on Arch and Manjaro) $ sudo zypper install aria2 (on OpenSuse)
Once aria2 installed, you can fire up the following command to download any given file…
$ aria2c https://releases.ubuntu.com/20.04.2.0/ubuntu-20.04.2.0-desktop-amd64.iso
If you’re interested to know more about aria2 and its switches, read the following article.
w3m is another open-source text-based web browser very similar to lynx, which runs on a terminal. It uses emacs-w3m an Emacs interface for w3m to browse websites within the emacs interface.
To install w3m in Linux.
$ sudo apt install w3m (on Debian, Ubuntu, & Mint) $ sudo dnf install w3m (on Fedora, CentOS & RHEL) $ sudo pacman -S w3m (on Arch and Manjaro) $ sudo zypper install w3m (on OpenSuse)
After installing w3m, fire up the following command to browse the website as shown below.
$ w3m www.tecmint.com
Browsh is a modern text-based browser that shows anything like a modern browser does such as HTML5, CSS3, JS, video, and even WebGL. Its major role is to be run on a remote server via SSH or Mosh and browse the web pages as text from the terminal by significantly reducing bandwidth and increase browsing speed.
It means the server downloads the web pages and utilizes the minimum bandwidth of an SSH connection to show the web page results. However, standard text-based browsers lack JS and all other HTML5 support.
To install Browsh on Linux, you need to download a binary package and install it using the package manager.
That’s all for now. I’ll be here again with another interesting topic you people will love to read. Till then stay tuned and connected to Tecmint. Don’t forget to provide us with your valuable feedback in the comments below. Like and share us and help us get spread.
9 thoughts on “9 Command Line Tools for Browsing Websites and Downloading Files in Linux”
Browsh is one more terminal browser that is able to display images and videos (poor ASCII quality). Also, wget and curl for downloading files.
I have added the Browsh text browser to the list as suggested by you. About wget and curl, we already covered in part 2 of this article here – https://www.tecmint.com/linux-command-line-tools-for-downloading-files/
links2 is wonderful for simpler webpages in GUI mode. RAM usage is practically zilch and it handles some JS to boot. Was playing around with it for about 1/2 an hour just now. You can get some decent color (text, link, background) combos too and it does local file navigation very nicely (input url: “file://”)
between, was looking for a simple terminal-based markdown viewer and came across ‘Terminal Markdown Viewer’ (mdv at github). It’s one of the few that’s python-based (pip install) and does a really nice job rendering MD locally. I suppose this makes it a subClass of the more able full-fledged browsers.
Lynx works well too because it at least colorizes certain tags – so the output looks nice:
Also… finding that w3m does MD locally pretty well via pandoc, though the output is blander but the html support is actually stronger than I expected:
Anyway, thought I’d share a specific use-case.
I love the way that the different tools are showcased in the text itself. Thank you for making such a well designed site
Lynx is a good cli web browser. In fact I am using lynx right now.
Great article. Can any of these tools be used over ssh? I am looking for a tool that can resume downloads over ssh if interrupted other than rsync (not supported on the system)
Unfortunately, there isn’t any tool that can able to resume interrupted downloads over ssh…
Could you use screen? Might work for some aspects, of this scenario…..
Thanks a lot, very useful tutorial,
I am using “youtube-dl” for downloading playlist and videos Very nice tool, following will give you max quality with HD 
youtube-dl -i –playlist-start 1 –max-quality 22 “URL”