6

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???

4
  • Close your terminal windows and open another.
    – lx07
    Nov 19, 2019 at 19:57
  • Maybe your terminal emulator can be configured separately which shell to use...
    – mpy
    Nov 19, 2019 at 19:57
  • Have closed and re-opened Terminal completely, opened a new tab, and opened a new window, @lx07, and rebooted - still the Terminal is using bash.
    – leanne
    Nov 19, 2019 at 19:59
  • I checked Terminal's Preferences, also, to ensure no startup run command is present, @mpy. The line is blank.
    – leanne
    Nov 19, 2019 at 20:01

4 Answers 4

9

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".

1
  • Nice self-solved question! Nov 19, 2019 at 20:46
0

A hard reset from Shell -> Hard Reset will do the job.

1
  • 1
    This may help in some circumstances; however, it doesn’t set the Terminal back to default settings. So, if the command path is set to something else, as mine was, this wouldn’t have helped. Again, it may help in other situations, so others may find this answer helpful!
    – leanne
    Feb 17, 2021 at 17:22
0

I repeated running "chsh -s /bin/zsh" from ssh terminal to my Big Sur then exit for a couple of times. Since the 2nd time it started to echo "no changes made". It seems until I logged into Big Sur from macOS UI with the same user account then the shell started to prompt zsh from ssh terminal.

-1

Try entering the terminal preferences with command key + enter before changing the changing it.

1
  • Can you give more information, @user1194882? It's not clear what you mean or how this would fix the problem. Please clarify...
    – leanne
    Jul 7, 2020 at 1:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.