Linux for Starters

Linux for Starters: Your Guide to Linux – Get Started with the Terminal – Part 9

External Commands

External commands are independent of the shell. Like other programs, the shell executes external programs by looking them up in the executable search path. The PATH environment variable contains a colon-separated list of directories to search for programs.

Even a vanilla Ubuntu installation comes supplied with hundreds of external commands. Many of them are terminal-based and represent cornerstone commands that let you manage the filesystem, monitor the system, develop software, improve your productivity, manipulate data, install/remove software, and much more.

Of course, you can run GUI apps from the shell. In many cases, GUI apps are merely a frontend to a command-line interface. To start some GUI apps, the name might not be immediately obvious. For example, to start the program shown as Terminal in the Dash, you need to type gnome-terminal in the shell.

There’s way too many external commands to cover here. We’ll cover the most useful in a later article in this series.

A man page (short for manual page) is a form of software documentation. External commands usually have a man page. They provide a description about the software together with available options. Here’s an extract from the manual page for whereis.

$ man whereis

There are other help-related tools such as whatis which provides a brief description of an external command. If you try whatis with a shell builtin you’ll get the response “nothing appropriate”; whatis is only helpful for external commands.

Linux for Starters - whereis

Redirect error and output messages to /dev/null

When we run a command from the shell error and output messages will appear in the terminal. While they can be very useful in diagnosing any problems, you may wish to suppress them.

>/dev/null redirects the command standard output to the null device, which is a special device which discards the information written to it.

$ command >/dev/null 2>&1

For example, we can start Rhythmbox from the terminal and suppress its error and output messages with the command:

$ rhythmbox >/dev/null 2>&1

We can place Rhythmbox in the background to allow us to continue using the shell by appending the & character to the above command.

$ rhythmbox >/dev/null 2>&1 &

Page 5 – Navigate the shell efficiently

Pages in this article:
Page 1 – Types of Commands
Page 2 – Shell Builtins
Page 3 – Aliases
Page 4 – External Commands
Page 5 – Navigate the shell efficiently
Page 6 – Appendix – Explanation of Shell Builtins


All articles in this series:

Linux For Starters: Your Guide to Linux
1What is Linux? Why use Linux? What do I need?
2Choose a Linux distribution meeting your specific needs and requirements.
3Make a bootable Ubuntu USB stick in Windows.
4We show you how to install Ubuntu 21.04 on your hard disk.
5Things to do after installing Ubuntu.
6Navigating your way around the Desktop.
7Updating the system, install new software.
8Open source replacements for proprietary Windows desktop software.
9Get started with the power and flexibility of the terminal.
10We cover the basics of files and permissions.
11Getting help from your system.
12Learn all about the file system.
13Manipulating files from the shell.
14Maintain your system with these simple tips.
15Managing users on your system.
16Explore different desktops to GNOME 3.
17Gaming on Linux.
18Protect your privacy with this guide.
19Access the Windows desktop from Linux using a remote desktop client.
20Set up a virtual machine running Ubuntu as the host and openSUSE as the guest.
21Wine lets you run Windows programs on Linux without emulation.
XUseful Linux commands.
Share this article

2 comments

  1. This is for beginners? Every other word seems undefined. I can read Supreme Court briefs and medical research but not this! The most important thing unexplained is what can be accomplished with these commands. If someone is willing to talk to me to explain these things, I am willing to suggest easier explanations.

    1. Every other word seems undefined?? I think you should read more of the guide before coming to your discourteous comment.

      You’ll learn a lot from Part 11, as that shows you how to find what you can do with the commands.

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.