The Shell - A command line interpreter that acts as an interface between users and the OS. When a command is given, the shell interprets the command and call the program. I can also be used as a high level programming language.
bash - is the shell, or command language interpreter, that will appear in the GNU operating system. The name is an acronym for the `Bourne-Again Shell'
tcsh - is a C shell that features a scrollable command history list with interactive editing. Tcsh makes it much easier to fix typos and reuse commands. In the following sections, '%' is the Unix command prompt.
zsh - is arguably the most powerful and configurable UNIX shell available. There are very few, if any, things that other shells can do that zsh can not.
-Why Use Shells

A shell script is a computer program designed to be executed by the Unix shell, a command-line interpreter. The various dialects of shell scripts are considered scripting languages. Typical operations performed by shell scripts include file manipulation, program execution, and text printing. A script that configures the environment, runs the program, and does any necessary cleaning, logging, etc. is called a wrapper.

The term is also more generally used to mean the automated mode of running an operating system shell; specific operating systems are called other things such as batch files (MSDos-Win95 stream, OS / 2), command procedures (VMS), and shell scripts (Windows NT stream and third-party derivatives such as 4NT-article in cmd .exe), and mainframe operating systems are associated with a number of terms.

The typical Unix / Linux / Posix installation includes Korn Shell (ksh) in several possible versions such as ksh88, Korn Shell '93 and others. The oldest shell still in common use is the Bourne shell (sh); Unix systems invariably also include C Shell, Bourne Again Shell (bash), a remote shell (rsh), a secure shell for telnet (ssh) SSL connections, and a shell that is a major component of the Tcl / Tk installation usually called tclsh; wish is a Tcl / Tk GUI-based shell. The shells C and Tcl have a syntax quite similar to those of programming languages, and the shells Korn and Bash are developments of the Bourne shell, which is based on the ALGOL language with elements of a number of others added as well. On the other hand, different shells more tools like awk, sed, grep and BASIC, Lisp, C and so on contributed to the Perl programming language.

Other shells available on a machine or available for download and / or purchase include ash, msh, and sh, zsh (a particularly common Korn Shell enhanced), Tenex Shell T (tcsh), a Perl (psh) shell, and others . Related programs like shells based on Python, Ruby, C, Java, Perl, Pascal, Rexx & c in various forms are also widely available. Another fairly common shell is osh, whose manual page states that "it is an enhanced, backward compatible version of the standard Sixth Edition UNIX command interpreter."

Windows-Unix interoperability software, such as the MKS Toolkit, Cygwin, UWIN, Interix and others, makes shells and Unix programming available on Windows systems, providing functionality to signals and other interprocess communications, system calls, and API. Hamilton Shell C is a Windows shell that is very similar to Unix Shell C. Microsoft distributes Windows Services for UNIX for use with its NT-based operating systems in particular, which have an environmental Posix subsystem.