LoginSignup
0
1

More than 1 year has passed since last update.

Macでデフォルトのシェルを変更する場合の備忘録

Last updated at Posted at 2023-03-21

先日、Macでデフォルトシェルを変更する設定を久方振りにやったところ、やり方を忘れてしまっていて困ってしまったので、ネットを調べた所、新旧判断の付かない情報で溢れていて困ってしまったので、備忘録として残しておくことにしました。

:warning: この備忘録では、Bashを例にしていますが、Zshでも方法は同じです。筆者は過去のMacから引き継いだスクリプトファイルの互換性維持やLinux環境との共通化のためにBashを利用しています。

現状のバージョンを確認

MacデフォルトのBashのバージョンは2023/3現在以下の通りです。

$ /bin/bash --version
GNU bash, version 3.2.57(1)-release (arm64-apple-darwin21)
Copyright (C) 2007 Free Software Foundation, Inc.

最新版をインストール

Bash version 4.x以前のバージョンでは最新のbash-completion@2を利用出来ません。よって、Homebrewでインストールします。

brew install bash

バージョンの確認

以下の通り、version 5.2.15がインストールされました。

$ /opt/homebrew/bin/bash --version
GNU bash, バージョン 5.2.15(1)-release (aarch64-apple-darwin21.6.0)
Copyright (C) 2022 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL バージョン 3 またはそれ以降 <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

デフォルトシェルの変更

デフォルトシェルを変更します。その前に、/etc/shellsにインストールした最新版のBashのPathを追加します。Pathがこのファイル内に登録されていないシェルはデフォルトシェルとして設定出来ません1

sudo echo "/opt/homebrew/bin/bash" >> /etc/shell"

Pathの追加後、以下のコマンドを実行します。

sudo chsh -s /opt/homebrew/bin/bash

変更出来たか確認します。chsh実行時に指定したシェルのパスが返ってくれば設定成功です。

$ echo $SHELL
/opt/homebrew/bin/bash

Bash Completionの最新版をインストール

Bash Completionにはbash-completionとbash-completion@2が有ります。既にbash-completionを利用している場合は、アンインストールします。

brew uninstall bash-completion

以下を実行し、最新版をインストールします。

brew install bash-completion@2

インストールに成功していると、以下の様に確認出来ました。

$ brew list | grep bash-completion
bash-completion@2

Reference

  1. chshを実行時に環境変数SHELLに登録されません。つまり変更出来ません。

0
1
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
1