Bash – Why is bash standard on Linux

bashlinux

Most recent Linux distributions include bash as default shell, although there are other, (arguably) better shells available.

I'm trying to understand if this is some historical leftover that nobody wants to change, or are there some good reasons that make bash the first choice?

Best Answer

The short answer is because linux is really GNU/Linux. Only the kernel is linux but the base collection of utilities providing the Unix like environment is provided by GNU and the GNU shell is bash
As I said, that's the short answer ;)

edited to add some additional commentary...
Let me prefix by saying that I'm not a Unix historian, so I can only answer IMHO

A few points, first of all bash is the kitchen sink of shells, as emacs is to editors.
At the time bash was released there were no free ksh implementations, tcsh was a free csh replacement, but Stallman had a rant against csh for shell programming.
As an interactive shell bash had excellent history/command recall, along with the saving of history from session to session. It was a drop in replacement for sh, bsh, ksh for shell programming and made for a decent interactive shell.
Like a snowball rolling downhill, bash has gained momentum and size.

Yes, there are dozens of other shells; shells that are better suited for individual purpose or taste, but for a single all around shell bash does a decent job and has had a lot of eyes on it for over 20 years.

Related Question