🖋️

JetBrains製品のShell設定変更方法

2023/07/26に公開

事象

MacでJetBrains製品を使っている私はターミナルのシェルとして /bin/zsh を普段使用している。しかし使用シェルが /bin/sh に勝手に変更されてしまう事象が何度か生じた。元のシェルに戻す方法を記述する。(今回実際に設定変更したのはGoLandだが、ほとんどのJetBrains製品で操作方法は同様のはず)

# いつもは↓のように.zshrcに仕込んだツールによってパスやブランチ名が表示されるはずなのに
~/go/src/github.com/mu-editech/OrganizationPractice main
> 

# JetBrains製品のウィンドウを新規に開いたとき、なぜかshの見た目になっていることがある
sh-3.2$ 

まず確認

macOSのターミナルで現在使用しているシェルの種類を確認する。

echo $SHELL
# /bin/sh

このコマンドは、現在ログインしているユーザーのデフォルトのシェルを表示する。ターミナルセッションで一時的に異なるシェルを使用している場合、そのシェルはこのコマンドで表示されない。

ターミナルで現在実際に使用しているシェルを確認するには、以下のコマンドを使う。これで現在のシェルプロセスの詳細がわかる。この出力の "CMD" カラムは、使用中のシェルの種類を示す。

ps -p $$
#   PID TTY           TIME CMD
# 45906 ttys008    0:00.01 /bin/sh --rcfile /Users/your-name/Library/Application Support/JetBrains/Toolbox/apps/Goland/ch-0/231.9225.16/GoLand.app/Contents/plugins/terminal/jediterm-bash.in -i

設定変更

  1. JetBrainsを開き、メニューバーの「GoLand」→「Preferences」(または Cmd + ,)を選択。(GoLandは任意のJetBrains製品の名前に入れ替え可能なはず)
  2. 左側のパネルで「Tools」→「Terminal」を選択。
  3. 「Shell path」の項目にあるテキストボックスに /bin/zsh を入力。
  4. 「Apply」をクリックして設定を反映し、「OK」をクリックする。(どちらかでも良い)

これで新しいターミナルを開いてzshになっていれば成功。

Discussion