In this tutorial, we will learn about one of the tldr client named Tldr++, how to install Tldr++ in Linux, and how to search, study and practice Linux commands with the help of Tldr++ client.
The title might look like sketchy and click bait. Allow me to explain what I am about to teach you in this tutorial.
Let us say you want to download an archive file, and extract it and finally move the file from one location to another from command line.
As per the above scenario, we may need at least three Linux commands, one for downloading the file, one for extracting the downloaded file and one for moving the file.
If you're intermediate or advanced Linux user, you could easily do this with an one-liner command or a script in few seconds/minutes.
But, if you are a noob who don't know much about Linux commands, you might need little help.
Of course, a quick google search may yield many results. Or, you could use man pages. But some man pages are really long, comprehensive and lack in useful examples.
You may need to scroll down for quite a long time when you’re looking for a particular information on the specific flags/options.
Thankfully, there are some good alternatives to man pages, which are focused on mostly practical commands. One such good alternative is TLDR pages.
Using TLDR pages, we can quickly and easily learn a Linux command with practical examples. To access the TLDR pages, we require a TLDR client. There are many clients available. One such client is "Tldr++".
What is Tldr++?
Tldr++ is a fast and interactive tldr client written with Go programming language. Unlike the other Tldr clients, it is fully interactive.
Using Tldr++, you can pick a command, read all examples, and immediately run any command without having to retype or copy/paste each command in the Terminal.
Still don't get it? No problem. Read on to learn and practice Linux commands on the fly using Tldr++.
Install Tldr++ in Linux
Installing Tldr++ is very simple. Download tldr++ latest version from the releases page. Extract it and move the tldr++ binary to your $PATH.
$ wget https://github.com/isacikgoz/tldr/releases/download/v0.5.0/tldr_0.5.0_linux_amd64.tar.gz
$ tar xzf tldr_0.5.0_linux_amd64.tar.gz
$ sudo mv tldr /usr/local/bin
$ sudo chmod +x /usr/local/bin/tldr
Now, run 'tldr' binary to populate the tldr pages in your local system.
Enumerating objects: 6, done. Counting objects: 100% (6/6), done. Compressing objects: 100% (6/6), done. Total 18157 (delta 0), reused 3 (delta 0), pack-reused 18151 Successfully cloned into: /home/sk/.local/share/tldr
Tldr++ is available in AUR. If you're on Arch Linux, you can install it using any AUR helpers, for example Paru or YaY. Make sure you have removed any existing tldr client from your system and run the following command to install tldr++.
$ paru -S tldr++
$ yay -S tldr++
Alternatively, you can build from source as described below. Since Tldr++ is written using Go language, make sure you have installed it on your Linux box. If it isn't installed yet, refer the following guide.
After installing Go, run the following command to install Tldr++.
$ go get -u github.com/isacikgoz/tldr
This command will download the contents of tldr repository in a folder named 'go' in the current working directory.
Now run the 'tldr' binary to populate all tldr pages in your local system using command:
Finally, copy the tldr binary to your PATH.
$ sudo mv tldr /usr/local/bin
It is time to see some examples.
Type 'tldr' command without any options to display all command examples in alphabetical order.
Use the UP/DOWN arrows to navigate through the commands, type any letters to search or type a command name to view the examples of that respective command. Press ? for more and Ctrl+c to return/exit.
To display the example commands of a specific command, for example apt, simply do:
$ tldr apt
Choose any example command from the list and hit ENTER. You will see a * symbol before the selected command. For example, I choose the first command i.e 'sudo apt update'.
Now, it will ask you whether to continue or not. If the command is correct, just type 'y' to continue and type your sudo password to run the selected command.
See? You don't need to copy/paste or type the actual command in the Terminal. Just choose it from the list and run on the fly!
There are hundreds of Linux command examples are available in Tldr pages. You can choose one or two commands per day and learn them thoroughly. And keep this practice everyday to learn as much as you can.
Search, Study And Practice Linux Commands On The Fly Using Tldr++
Now think of the scenario that I mentioned in the first paragraph. You want to download a file, extract it and move it to different location and make it executable. Let us see how to do it interactively using Tldr++ client.
Step 1 - Download a file from Internet
To download a file from command line, we mostly use 'curl' or 'wget' commands. Let me use 'wget' to download the file. To open tldr page of wget command, just run:
$ tldr wget
Here is the examples of wget command.
You can use UP/DOWN arrows to go through the list of commands. Once you choose the command of your choice, press ENTER. Here I chose the first command.
Now, enter the path of the file to download.
You will then be asked to confirm if it is the correct command or not. If the command is correct, simply type 'yes' or 'y' to start downloading the file.
We have downloaded the file. Let us go ahead and extract this file.
Step 2 - Extract downloaded archive
We downloaded the tar.gz file. So I am going to open the 'tar' tldr page.
$ tldr tar
You will see the list of example commands. Go through the examples and find which command is suitable to extract tar.gz(gzipped archive) file and hit ENTER key. In our case, it is the third command.
Now, you will be prompted to enter the path of the tar.gz file. Just type the path and hit ENTER key. Tldr++ supports smart file suggestions. That means it will suggest the file name automatically as you type. Just press TAB key for auto-completion.
If you downloaded the file to some other location, just type the full path, for example /home/sk/Downloads/tldr_0.5.0_linux_amd64.tar.gz.
Once you enter the path of the file to extract, press ENTER and then, type 'y' to confirm.
Step 3 - Move file from one location to another
We extracted the archive. Now we need to move the file to another location. To move the files from one location to another, we use 'mv' command. So, let me open the tldr page for mv command.
$ tldr mv
Choose the correct command to move the files from one location to another. In our case, the first command will work, so let me choose it.
Type the path of the file that you want to move and enter the destination path and hit ENTER key.
Note: Type y! or yes! to run command with
As you see in the above screenshot, I moved the file named 'tldr' to '
For more details, refer the project's GitHub page given at the end.
Don't get me wrong. Man pages are great! There is no doubt about it. But, as I already said, many man pages are comprehensive and doesn't have useful examples.
There is no way I could memorize all lengthy commands with tricky flags. Some times I spent much time on man pages and remained clueless.
The Tldr pages helped me to find what I need within few minutes. Also, we use some commands once in a while and then we forget them completely.
Tldr pages on the other hand actually helps when it comes to using commands we rarely use. Tldr++ client makes this task much easier with smart user interaction.
Give it a go and let us know what you think about this tool in the comment section below.
This is the best tldr client I’ve come across. I just uploaded it to the Arch User Repository: https://aur.archlinux.org/packages/tldr%2B%2B/
Thank you Mark. I just updated the installation instructions for Arch linux.
I had forgotten that there were so many tldr clients (written in different languages) until I started digging a little deeper just now:
I wonder if a distro will ever make these user-friendly and effective pages the default help system (or at least put them on equal footing/co-exist with the legacy MAN pages). I hardly ever refer to MAN pages for help. In contrast, TLDR has been an effective tool. I have a bash version (raylee) installed but I quite like the additional feature set in TLDR++
My kudos to the authors! Tools like this one really makes life much easier to linux newcomers.
I’m just working on a different project that (I think) can complement this TLDR. I called it “The Single Page Book Project”. One way to see is that of putting an “insanely” complete cheat-sheet of doc in a single html page, and add a minium-search-engine to help newcomers find some doc as well as create a fast mental-map of related topics.
For example the Linux-admin-map single-page-book is available at:
(I will add a cell to the TLDR tool ASAP)
An (work-in-progress) page of the Go language is also available:
as well as a (work-in-progress) page of Kubernetes:
The main page explain more in detail what it all is about. It also contains a list of existing single-page-books I have wrote.
WARN!, WARN!, WARN! The UI is designed to allow single-page, mind-map and quick-search over any “cool” or “sexy” style.
(When a production server goes down no body cares about pretty docs, just about quick fixes)
I find tldr’s limited, which for a user just starting is great. Another “Tool” I like is fish shell as it auto completes man page options. When hitting tab a time or two after a dash “-” it will give you the argument and a description.