There are multiple types of Shell in Linux, the most common of which are Bourne shell (SH), c shell (CSH), and Korn shell (Ksh ). Each of the three shells has its own advantages and disadvantages. The Bourne shell is the original shell used by UNIX and can be used on every UNIX. Bourne shell is excellent in shell programming, but it is inferior to several other shells in dealing with user interactions. The default shell in Linux is the Bourne again shell, which is an extension of the Bourne shell, bash for short. It is completely backward compatible with the Bourne shell, in addition, many features are added and enhanced based on the Bourne shell. Bash is placed in/bin/bash. It has many features, such as command completion, command editing, and command history table, it also contains many advantages of C shell and Korn shell, flexible and powerful programming interfaces, and friendly user interfaces.
In the GNU/Linux operating system,/bin/sh is the symbolic link of bash (Bourne-again shell). However, given Bash is too complex, someone transplanted ash from NetBSD to Linux and renamed it "Dash (Debian almqualified shell)". It is recommended that/bin/sh be directed to it for faster script execution. Ubuntu claims that the system startup speed has been significantly improved since they did so in version 6.10. Debian plans to use dash as the default/bin/sh in the next release (codenamed Lenny.