
Mac OS Xターミナルのシェルを変更する
bashに飽きていませんか?zsh、ksh、tcsh、fish、shのどれかを使いたいですか?ターミナルアプリでデフォルトのシェルを簡単に変更できます。また、SSHなどでリモートログインする際のデフォルトのログインシェルも変更できます。それぞれの手順は以下のとおりです。
Mac OSでターミナルアプリのデフォルトシェルを変更する方法
これにより、ターミナル アプリの起動時、新しいターミナル ウィンドウ、新しいターミナル タブで使用される新しいシェルが調整され、新しいデフォルトの Mac シェルになります。
- まだ開いていない場合は、ターミナルアプリを開きます
- 「ターミナル」メニューから環境設定を開き、「一般」タブ(古いMac OSバージョンでは「スタートアップ」タブ)をクリックします。
- 「シェルを開く」で「コマンド(完全なパス)」を選択し、新しいシェルを設定します。
Mac OS X にバンドルされている、切り替え可能なデフォルトのシェル オプションには、次のパスが含まれます。
/bin/zsh
/bin/ksh
/bin/tcsh
/bin/bash
/bin/sh
これらのいずれかを「コマンド(完全なパス)」ボックスに配置すると、新しいシェルがターミナル ウィンドウのデフォルトとして設定されます。
これにより、ターミナル アプリで使用されるデフォルトのシェルが変更されることに注意してください。これは、次の手順で変更されるデフォルトのログイン シェルとは異なります。
Mac OS Xでユーザーのデフォルトのログインシェルを変更する
chshコマンド(「change shell」の略)を使って、コマンドラインからデフォルトのシェルを変更することもできます。SSHまたはtelnetでログインする際にデフォルトのシェルを変更したい場合、このコマンドが必要になります。変更するたびに認証が必要です。コマンドは直接確認するか、sudoをプレフィックスとして付けることができます。デフォルトのユーザーシェルをzsh、bash、tcsh、ksh、sh、またはその他のシェルに設定する方法は次のとおりです。
ユーザーのログインのデフォルトシェルを zsh に変更します。
chsh -s /bin/zsh
ksh:
chsh -s /bin/ksh
tcsh:
chsh -s /bin/tcsh
bash(デフォルト):
chsh -s /bin/bash
しゅ:
chsh -s /bin/sh
その他のシェル:
chsh が設定するパスを次のように調整するだけです。
chsh -s /path/to/alternate/shell/like/fish
この最初の部分については数年前に取り上げましたが、それ以降変更はありません。ただし、Monterey や Big Sur などの macOS の最新バージョンでは zsh がデフォルトとして使用されているのに対し、Mavericks、Lion、Sierra、Snow Leopard などの古いバージョンの MacOS と Mac OS X では bash がデフォルトのシェルとして使用されていたことは注目に値します。