why this message? And, how do you update?

To update your account to use zsh, please run `chsh -s /bin/zsh`.


For more details, please visit https://support.apple.com/kb/HT208050.


iMac 27″ 5K, macOS 10.15

Posted on Mar 1, 2021 12:18 PM

Reply
Question marked as Top-ranking reply

Posted on Mar 1, 2021 12:29 PM

I'm not certain whether what you've posted here was intended as a question, or as a statement. If it was intended as a question, here is some more detail on this shell migration.


The following is for folks that use Terminal.app and the macOS command line for application development, for macOS maintenance, or for troubleshooting.


Apple switched the default command-line shell for macOS 10.15 Catalina and later from the bash shell to the zsh shell, and published some related zsh migration documentation.


Why? Bash switched to a software license which was incompatible with macOS licensing, which means the bash shell version included with macOS has been getting further and further behind the current version.


The zsh software license is compatible with that of macOS.


zsh can run most bash shell scripts, but not all. There are differences. Which means specifying bash when invoking some shell scripts, or modifying those shell scripts for use with zsh. Or porting the scripts to some other language, of course.


Newly-created users on macOS Catalina and later are now created with the zsh shell as the default shell, while existing macOS users created on macOS Mojave and earlier will still have the bash shell as their login after an upgrade to a version of macOS that defaults to zsh.


The bash deprecation message can be suppressed. Add the following to your ~/.bash_profile or ~/.profile login script:

export BASH_SILENCE_DEPRECATION_WARNING=1


2 replies
Question marked as Top-ranking reply

Mar 1, 2021 12:29 PM in response to pmdean922

I'm not certain whether what you've posted here was intended as a question, or as a statement. If it was intended as a question, here is some more detail on this shell migration.


The following is for folks that use Terminal.app and the macOS command line for application development, for macOS maintenance, or for troubleshooting.


Apple switched the default command-line shell for macOS 10.15 Catalina and later from the bash shell to the zsh shell, and published some related zsh migration documentation.


Why? Bash switched to a software license which was incompatible with macOS licensing, which means the bash shell version included with macOS has been getting further and further behind the current version.


The zsh software license is compatible with that of macOS.


zsh can run most bash shell scripts, but not all. There are differences. Which means specifying bash when invoking some shell scripts, or modifying those shell scripts for use with zsh. Or porting the scripts to some other language, of course.


Newly-created users on macOS Catalina and later are now created with the zsh shell as the default shell, while existing macOS users created on macOS Mojave and earlier will still have the bash shell as their login after an upgrade to a version of macOS that defaults to zsh.


The bash deprecation message can be suppressed. Add the following to your ~/.bash_profile or ~/.profile login script:

export BASH_SILENCE_DEPRECATION_WARNING=1


This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

why this message? And, how do you update?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.