MacMost Q&A Forum • View All Forum QuestionsAsk a Question

Which Is the “right” Terminal Interactive Shell — Bash, Z Shell …?

When opening the Terminal app for the first time on a new iMac (macOS Catalina 10.15.1) I notice this message …

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit

The support article mentions “bash” and “Z Shell” and how to change between them. I am guessing that for a semi-technical user like me, who only makes occasional forays into the Terminal app, the choice of shell should not make any difference, but it would be good to have your thoughts and any recommendations on this subject.



Comments: 3 Responses to “Which Is the “right” Terminal Interactive Shell — Bash, Z Shell …?”

    2 years ago

    You are right, it won’t much much different for most users. There are many different shells you can use in the Terminal app and it is easy to change between them and set your default shell.

    The version of bash that Apple was using is old, and the newer versions have a licensing issue so it sounds like Apple doesn’t want to update to the new versions. Instead, they just switched the default shell to zsh and are urging those who have already used Terminal to switch as well, instead of automatically switching to it.

    I recommend that you do the switch. Might as well, I see no downside. Plus at some point in the future you may come across some feature of zsh mentioned in a video or article and it would help if you are already using zsh.

    2 years ago

    Thanks Gary!

    Bob Sander-Cederlof
    2 years ago

    I remember when OSX first came out, the default shell was zsh.
    Later they changed to bash.
    A co-worker wrote a script for me and started to run it on my Mac. He quickly stopped the script, because he saw it was starting to delete every file in /Applications folder.
    The “bug” in his script was a difference between zsh and bash. He had written expecting one, and my default was the other.
    Of course a properly written script would specify what shell to use with the #! on the first line.

Comments Closed.