Macos – Switching to Zsh in macOS Catalina not working

bashmacos catalinaterminalzsh

I decided to take the plunge and switch to zsh. So, I followed the Terminal window instructions and entered:

chsh -s /bin/zsh

I then entered echo $0to see the switch – and it returned -bash!

Then, I went to the support page, and followed the instructions there to make the change through System Preferences. However, the "Login shell" dropdown already showed zsh:

Login shell dropdown showing <code>zsh</code>

So, I thought maybe I need to reboot… Nope, the System Preferences still show zsh, Terminal returns -bash, and when I try to re-run chsh -s /bin/zsh, Terminal returns chsh: no changes made.

Running echo $SHELL in Terminal returns /bin/zsh.

What am I missing???

Best Answer

Okay - one more place to check:

In Terminal's Preferences, under the General pane, there's an option to use the default login shell or set another. For some reason, mine is set to use another (probably set this in a far away time and place for some long done learning opportunity, lol).

Preferences, General Pane, shows I have <code>bash</code> entered, rather than Default login shell selected...

Selected "Default login shell", opened a new Terminal window, and voilĂ , all is working as expected! Sheesh...

Found to look there in the same support article, under "How to use a different shell without changing the default".

Related Question