0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Cursorでターミナルのシェルをbashに変更する方法

Posted at

はじめに

Cursor(およびVS Code)は、macOSのシステム設定とは独立してターミナルを制御しています。そのため、macOSでbashをデフォルトシェルに設定しても、Cursorの統合ターミナルではzshが起動してしまうことがあります。

本記事では、Cursorで統合ターミナルのシェルをbashに固定する方法を詳しく解説します。加えて、.bash_profile.bashrc の関係や、設定ファイル(settings.json)の具体的な記述例も紹介します。


1. 現在のシェルを確認する

まずは、Cursorの統合ターミナルがどのシェルを使用しているか確認します。

echo $SHELL

もし /bin/zsh と表示される場合、Cursorがzshを使用しています。bashに変更するには次のステップに進みましょう。


2. macOS側のデフォルトシェルをbashに変更する

macOSではデフォルトでzshが有効になっているため、システム全体でbashを使いたい場合は以下のコマンドを実行します。

chsh -s /bin/bash

設定が反映されたか確認するには、以下のコマンドを使用します。

dscl . -read ~/ UserShell

結果が次のようになればOKです:

UserShell: /bin/bash

ただし、この設定はmacOS全体に対して有効であり、Cursorの統合ターミナルには自動で反映されない点に注意してください。次のステップでCursor側の設定を行います。


3. Cursorの設定でbashを明示的に指定する

Cursor(VS Codeベース)は、内部設定に基づいて統合ターミナルを起動します。そのため、settings.json にbashを明示的に指定する必要があります。

手順

  1. Cursorを開きます。
  2. Cmd + Shift + P を押してコマンドパレットを開きます。
  3. 検索バーに「基本設定: ユーザー設定を開く (JSON)」または「Preferences: Open User Settings (JSON)」と入力します。
  4. settings.json が開かれたら、次の内容を追加します。
{
  "terminal.integrated.defaultProfile.osx": "bash",
  "terminal.integrated.profiles.osx": {
    "bash": {
      "path": "/bin/bash",
      "args": ["-l"],
      "icon": "terminal-bash"
    },
    "zsh": {
      "path": "/bin/zsh"
    },
    "fish": {
      "path": "/usr/local/bin/fish"
    }
  },
  "terminal.integrated.shellIntegration.enabled": true
}

設定項目の詳細解説

設定項目 内容 説明
terminal.integrated.defaultProfile.osx bash macOSでデフォルトとして起動するターミナルをbashに指定します。
terminal.integrated.profiles.osx 各シェルの設定 複数のシェルを登録できます。ここではbash/zsh/fishを例示しています。
path /bin/bash 実際に使用するbashの実行ファイルパスです。macOS標準のbashを指定しています。
args ["-l"] ログインシェルとして起動します。.bash_profile が読み込まれるようになります。
icon terminal-bash CursorのUI上でbashアイコンを表示します。
terminal.integrated.shellIntegration.enabled true シェル統合機能を有効化し、プロンプト検出やコマンド履歴連携を可能にします。

4. .bash_profile.bashrc の関係

bashには2種類の設定ファイルがあります:

ファイル名 読み込まれるタイミング 主な用途
~/.bash_profile ログインシェル起動時 PATHや環境変数の設定
~/.bashrc 非ログインシェル起動時 エイリアスやプロンプト設定

Cursorの統合ターミナルは非ログインシェルとして起動するため、通常は .bashrc のみが読み込まれます。もし .bash_profile にPATHや環境変数を設定している場合、以下のようにして共通化しておきましょう。

# ~/.bash_profile
if [ -f ~/.bashrc ]; then
    source ~/.bashrc
fi

これにより、どちらの起動方法でも同じ環境が反映されます。


5. 設定を反映して確認する

Cursorを再起動し、統合ターミナルで以下を実行します。

echo $0

結果が以下のように表示されれば成功です:

bash

または:

/bin/bash

6. よくあるトラブルと対処法

症状 原因 対処法
chsh で変更してもCursorではzshが起動する Cursor独自の設定が優先されている settings.json/bin/bash を明示的に設定する
.bash_profile の設定が反映されない Cursorは非ログインシェルで起動する .bash_profile から .bashrc を呼び出すように変更する
「The default interactive shell is now zsh.」という警告が出る Appleがzshを推奨する案内 .bash_profile に以下を追記して抑制:
export BASH_SILENCE_DEPRECATION_WARNING=1

7. まとめ

ステップ 内容
1 macOSのデフォルトシェルをbashに変更 (chsh -s /bin/bash)
2 Cursor設定(settings.json)に /bin/bash を指定
3 .bash_profile.bashrc の内容を共通化
4 $SHELL または $0 コマンドで確認

これで、Cursorでも統合ターミナルが常にbashで起動するようになります。bash特有のスクリプト互換性や、既存開発環境との統一が必要な場合に最適な設定です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?