I have noticed two ways to the change default shell in Mac OS X.

  • Open up Terminal preference and set "Shells open with" to "Command". Then type the path to the shell program such as /usr/local/bin/zsh.
  • Another way is to turn on System Preferences and pick "Accounts". Unlock the preference so that you can make a change. Find your username under which you want to change the default shell. Then right click it to go to "Advanced Options...". Then I can find the setting for "Login shell".

What's the difference between the two ways I mentioned above? Which could be good for what purpose?

link|improve this question

feedback

1 Answer

up vote 2 down vote accepted

The terminal preference only affects the terminal the other way affects all processes that use a shell (e.g. if you ssh into the machine only the latter will have changed the shell)

Note that applications launched from the dock/finder etc are not affected by either.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

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