No matter how experienced you are with the Linux command line, there will always be situations where you will encounter commands you do not know. In situations like this, while it's natural instinct to either refer to man pages or google the command to find out what it does, what if we tell you there is a better (immersive) way to do it .
Well, it turns out there is a tool called ExplainShell that does just that: telling you what each part of a shell command is doing in an easy-to-understand way.
So let's dive in to test ExplainShell in detail.
What is ExplainShell?
ExplainShell is a web-based tool that you can use to look up unfamiliar shell commands to find out what they do and learn more about them. You can think of it as an online collection of man pages where you can query commands for a detailed explanation of their purpose, supported arguments, and syntax – all in a well-presented and easy-to-understand manner.
How does ExplainShell work?
ExplainShell is an online archive that contains a number of parsed sections from the Ubuntu man pages repository. It is supported by several different services in the background that help it to find a match for the commands you have queried in its database.
If there is a match, ExplainShell returns any relevant information about that command that it could get from its man page in an intuitive presentation.
How to use ExplainShell
Because ExplainShell is web-based, you don't have to install it on your local computer to use it. Instead, all you have to do is go to exploreshell.com and ask for any commands you're interested in to learn more about them.
To find a shell command in ExplainShell, first copy the command to make sure you are getting the correct command.
Now either right-click in the search field and choose paste or press Ctrl + V to paste the command you just copied. Alternatively, you can enter the command manually.
Finally hit that EXPLAIN Button next to the search box to look it up.
ExplainShell will then retrieve its explanation and present it on the next page. Here you will find that it breaks down the meaning of each part of the command one at a time by matching the arguments against the corresponding help text in its man page database.
The explanation is laid out so that you have appropriately broken the command you asked for into different sections (and arguments) above, and grouped explanations for each of them in boxes below that are connected by lines.
You can then mouse over an argument (or part of the command) that you do not understand to highlight its explanation.
Additionally, you can click the hyperlink command name next to the source man pages at the bottom of the page to view the explanation source and other relevant information.
Finally, while ExplainShell is an aesthetic feature, you can also change the theme of the website. So if you prefer dark mode, you can tap and select the theme button under the website name Dark from the drop-down menu to change the website theme.
What are the limitations of ExplainShell?
At the time of writing, ExplainShell has 29,761 parsed man pages in its database, and there is a good chance that most of the shell commands you query on it will produce positive results.
However, it is also likely that the tool cannot provide explanations for certain command queries that you have made. In this case, the ExplainShell developer suggests sending an add request with the link on the GitHub Issues page so they can add it to their database.
Learn new shell commands with ExplainShell
Through this guide, you should now probably have an idea of what ExplainShell is and how it can help you easily decipher mysterious shell commands.
So now if you come across an unknown command, you can just go to ExplainShell and find all the information about it. And learn what this command does and how to use it.
If you are new to Linux, we recommend checking out these basic commands to help you learn standard computing tasks.
9 basic commands to get started with Linux
Would you like to familiarize yourself with Linux? Start with these basic Linux commands to learn standard computing tasks.
About the author
(30 articles published)
Yash is Staff Writer at MUO for DIY, Linux, programming and security. Before he discovered his passion for writing, he developed for the web and iOS. You can also find his writing on TechPP where he covers other industries. Aside from technology, he likes to talk about astronomy, Formula 1 and clocks.
By Yash Wate
Subscribe to our newsletter
Subscribe to our newsletter for tech tips, reviews, free e-books, and exclusive offers!
Click here to subscribe