Linux shell types
If you have worked on a Linux system before, you might have noticed that sometimes CLI interface behaves differently: sometimes you press the Backspace button to delete a command and it doesn't work or when you press a TAB button to autocomplete - it doesn't autocomplete.
And that is because there are different kinds of shells which behaves differently, such as:
- Bourne Shell (sh) - older shell which have limitations in the ways we interact with it
- Bourne again Shell (bash) - newer shell which supports many advanced features such as arithmetic operations, conditionals, arrays etc.
- C Shell (csh or tcsh) - was created at the University of California by Bill Joy
- Korn Shell (ksh) - was developed at AT&T Bell Labs by David Korn, to improve the Bourne shell
- Z Shell (zsh) - is a sh shell extension with tons of improvements for customization
- fish - is considered an exotic shell since it does not rigorously adhere to POSIX shell standards