The constructs permit fine-grained control of the input and output of those commands.
Moreover, the shell allows control over the contents of commands’ environments.
Shells also provide a small set of built-in commands ( builtins, among others, could be implemented in separate utilities, but they are more convenient to use as builtin commands.
This text is a brief description of the features that are present in the Bash shell (version 4.4, 7 September 2016). This is Edition 4.4, last updated 7 September 2016, of ).
The following menu breaks the features up into categories, noting which features were inspired by other shells and which are specific to Bash.
This manual is meant as a brief introduction to features found in Bash.
The Bash manual page should be used as the definitive reference on shell behavior.
At its base, a shell is simply a macro processor that executes commands.
The term macro processor means functionality where text and symbols are expanded to create larger expressions.
A Unix shell is both a command interpreter and a programming language.
As a command interpreter, the shell provides the user interface to the rich set of utilities.
The programming language features allow these utilities to be combined.