Shell
Once a user has entered a command, the terminal then accepts what the user has typed and passes it to a shell.
The shell is the command line interpreter that translates commands entered by a user into actions to be performed by the operating system.
If output is produced by the command, then text is displayed in the terminal. If problems with the command are encountered, an error message is displayed.
The Linux environment allows the use of many different shells, some of which have been around for many years. The most commonly-used shell for Linux distributions is called the Bash shell.
Bash Shell
Bash provides many advanced features, such as command history and inline editing, which allows a user to easily re-execute previously executed commands or a variation of them via simple editing.
The Bash shell also has other popular features, a few of which are listed below:
- Scripting: The ability to place commands in a file and then interpret (effectively use Bash to execute the contents of) the file, resulting in all of the commands being executed. This feature also has some programming features, such as conditional statements and the ability to create functions (AKA subroutines).
- Aliases: The ability to create short nicknames for longer commands.
- Variables: Used to store information for the Bash shell and for the user. These variables can be used to modify how commands and features work as well as provide vital system information.
Bash has an extensive feature list; this is only a sampling of its capabilities.
An important part of the interface is the prompt.
Not only is the prompt there to indicate that commands can be run, but it also conveys useful information to the user.
The prompt is fully configurable and can be as sparse or as full-featured as is practical and useful.