We compare the Bash, Zsh, and fish shells
Shell Shopping

Don't let your familiarity with the Bash shell stop you from exploring other options. We take a look at a pair of alternatives that are easy to install and easy to use: Zsh and fish.
When you open a terminal window and start typing a text-based command, you are interacting with a command shell or command line interface (CLI). A shell is a program that acts as an interface to a command processor, the component that carries out commands by interacting with the underlying system.
Some of the command shells around today predate the birth of Linux and were originally used on classic Unix systems (see the box entitled "A Little History"). The most popular shell for Linux systems in the Bourne Again Shell, which is known universally as Bash [1]. Bash is the default for the terminal window on most systems, and Bash syntax is the norm for most popular discussions of Linux, including most of the articles in this magazine. But it isn't like you're stuck with it. Most distros include alternative shells in their package repositories, and it is easy to try out a different shell if you're interested.
"Why switch?" you might be asking. If you're doing fine with Bash, there is no reason to change; however, many Linux users just like to experiment. And the fact is, the whole reason why all the different shells exist is because users saw something missing from the existing options and decided to innovate.
[...]
Buy this article as PDF
(incl. VAT)