Linux shell is the command interpreter used to pass commands to an operating system; so called because it is the part of the operating system that interfaces with the outside world.
There are many kinds of shells:
- BA shell (The Bourne Again Shell) is based on the Bourne shell, sh, the original command interpreter.
- C shell is shell command interpreter with a C-like syntax.
- Z shell is similar to, but not completely compatible with, ksh, with many additions to please csh users and some tcsh features.
- TC shell is C shell with file name completion and command line editing.
- Korn shell is a standard/restricted command and programming language.