The programming language features allow these utilities to be combined.
Files containing commands can be created, and become commands themselves.
These new commands have the same status as system commands in directories such as , allowing users or groups to establish custom environments to automate their common tasks.
In interactive mode, they accept input typed from the keyboard.
When executing non-interactively, shells execute commands read from a file.
A shell allows execution of commands, both synchronously and asynchronously.
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.This text is a brief description of the features that are present in the Bash shell (version 4.3, 2 February 2014). This is Edition 4.3, last updated 2 February 2014, 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.