Here is the ls
output of my /bin
directory:
[csh ksh zsh bash dash tcsh sh ...]
Prior to catalina bash was the default and now zsh is default. What's the usage of others?
There are a lot of different shells available for Unix-like systems, and different users have different preferences. So on most Unix systems you'll find some of the most often used shells installed, to give users a choice in using whatever they prefer.
For more information about the differences between various shells see:
The default shell is just the shell newly created user accounts get assigned as a default shell. This can easily be changed by using chsh
or changing the entry in the Users & Groups preference pane. And it's worth nothing that the default shell of existing user accounts will not be changed during the upgrade to Catalina.
Apple and Unix tools self document themselves, so you can read the manual page of each to understand their role and place.
I recommend you start with the korn shell - be different!
man ksh
I can’t speak for Apple, but the plurality of options helps software evolve and change since scripts based on previous tools can keep working when a change happens to the default or not hold back newcomers from solving a problem in a different way than an existing shell.
bash
andzsh
. Offering more than one shell addresses legacy concerns and provides choice. There is no single answer or reason.