Bash is the extended version of sh shell that incorporates useful features from Korn and C shell. As compared to sh shell, there are many features are added in Bash shell like command line editing, history of commands, filename completion, command name completion, job control, aliases, indexed arrays of unlimited size.
There are many features are found only in Bash shell. They are as follows:
· Bash startup files:
Startup files are scripts that are read and executed by bash when it starts. Startup scripts like .bash_profile, .bashrc.
Conditionals expressions are used by the [[ compound command and by the test and [ built in commands.
· Shell arithmetic:
The shell allows arithmetic expressions to be evaluated as one of the shell expansions or by the let built-in .
Aliases allow a string to be substituted for a word when it is used as the first word of a simple command. The shell maintains a list of aliases. Aliases are expanded when a command Is read, not when it is executed.
· Directory stack:
The directory stack is a list of recently visited directories. Pushd commands adds directories to the stack as it changes the current directory, and the popd built-in removes specified directories from the stack and changes the current directory to the directory removed.