“The Unix shell, or the command shell, is the program that shows
you the shell prompt and accepts commands such as ls
/usr/bin. Compared to command shells on most other systems,
the unix shell is a very complex program: a command like ls
/usr/bin/ is in fact a statement in the shell language, using
which it’s possible to build quite complex programs.”
“There are two primary dialects of shell languages: the
Bourne shell (sh) and the C shell (csh). The Bourne shell was the
original Unix shell, and as such is the simplest one the of general
purpose Unix shells. Backwards compatible with sh are the GNU
Bourne-Again shell (bash), the Korn shell (ksh), the Z shell (zsh)
and some others. The program in /bin/sh is expected to execute the
Bourne shell language. Bash is the standard shell in many Linux
distributions. The C shell is so named because its syntax looks
more like C than does syntax of sh. Backwards compatible with csh
is its enhanced version tcsh (the letter t is obviously an
arbitrary choice).”