1. HOME»
  2. プログラミング・Web»
  3. ターミナル»
  4. 【解決!】Macで「デフォルトシェルはzshになった」と表示されるときの対処法

【解決!】Macで「デフォルトシェルはzshになった」と表示されるときの対処法

MacOSをアップデートしてから、ターミナルを開くたびに、「The default interactive shell is now zsh.」というメッセージが表示されるようになりました。

これはMacOS Catalinaから表示されるようになったようです。というのも、Catalinaからデフォルトシェルがbashからzshに変更されました。そこでターミナルが、デフォルトのインタラクティブシェルはzshになったからね、と教えてくれているのです。
ログインシェルをbashにしていると表示されます。

教えてくれるのはありがたいのですが、ターミナルを開くたびに毎回教えてくれるので、もう知ってるって、となります。

そこで今回は、「The default interactive shell is now zsh.」とターミナルに表示されるときの対処法を二つ紹介します。

まず、いま現在の状態についてです。

ターミナル

ターミナルを開くと、以下のようなメッセージが表示されます。

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 https://support.apple.com/kb/HT208050.

デフォルトのインタラクティブシェルはzshになりました。アカウントの設定を変更してzshを使うには、chsh -s /bin/zshを実行してください、といった内容です。
さらに詳しくは https://support.apple.com/kb/HT208050 をご覧ください、とも書かれていますので、気になる方は見てみるといいでしょう。
日本語サイトなので、分かりやすいです。

目次
  1. ログインシェルをzshに変更する場合
  2. デフォルトシェルを変更せずに、メッセージを非表示にする場合
  3. まとめ

ログインシェルをzshに変更する場合

まずは、ターミナルで教えてくれる通りに、ログインシェルをzshに変更する方法を紹介します。
ターミナルからコマンドで変更する方法と、システム環境設定から変更する方法があります。

コマンドで変更する方法

これはメッセージに表示されているコマンドchsh -s /bin/zshを、そのままターミナルに打ち込むだけでできます。

$ chsh -s /bin/zsh

ここでちょっとだけ解説します。

まず、表示されるメッセージにあるchsh -s /bin/zshですが、これはログインシェルをzshに変更するコマンドです。
chsh -s の後ろに、どのシェルに変更したいのか、そのシェルへのパスを入力します。
使用できるシェルへのパス一覧は、以下のコマンドで見ることができます。

$ cat /etc/shells
# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.

/bin/bash
/bin/csh
/bin/dash
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

システム環境設定から変更する方法

システム環境設定から「ユーザとグループ」を開きます。

システム環境設定

鍵マークをクリックし、パスワードを入力し、ロックを外します。
さらに、ユーザを右クリックして「詳細オプション」をクリックします。

ユーザとグループ

ログインシェルを/bin/zshに変更します。

ユーザとグループ

これで、ログインシェルがzshに変更され、ターミナルを開いてもメッセージが表示されなくなります。

デフォルトシェルを変更せずに、メッセージを非表示にする場合

デフォルトシェルを変更せずに、メッセージだけを表示させないようにする方法です。
これは、これまでのようにbashを使い続けたい、という人のための対処法です。

その場合は「~/.bash_profile」もしくは「~/.profile」に、以下のコマンドを入力することで、メッセージを非表示にすることができます。

export BASH_SILENCE_DEPRECATION_WARNING=1

「~/.profile」よりも「~/.bash_profile」に書かれたものの方が優先順位が高いので、よく分からない場合は「~/.bash_profile」の方に記述しておけば、間違いないと思います。

もし~/.bash_profileに上記コマンドを書き込みたい場合は、以下のコマンドをターミナルに入力します。(~/.bash_profileがない場合は作られます。)

$ echo "export BASH_SILENCE_DEPRECATION_WARNING=1" >> ~/.bash_profile

これで、デフォルトシェルはbashのまま、メッセージだけを非表示にすることができます。

まとめ

MacOS Catalinaから、デフォルトシェルがbashからzshに変更されたことにより、ターミナルを開くたびに「The default interactive shell is now zsh.」というメッセージが表示されるようになりました。
これは、ログインシェルをbashにしていると表示されるようです。

そしてそれは、簡単なコマンドを実行するだけで、非表示にすることができます。

以上、そんなターミナルのメッセージへの対処法でした。

オリジナルゲーム.com