MacOS Catalinaから標準シェルはzshになったわけですが・・・
bash –version
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin19)
ということで、MAcOS標準搭載のbashバージョンは3.2.57(1)とかなり古いです。(現在の最新版はver5系列)
本来ならOS標準のシェルを覚えてそちらに乗り換えていくべきなのでしょうがLinux標準はbashですし、そんなにたくさん覚えられないということで、bashを最新版にしてみました。
お手軽にhomebrewを使用
qiitaの記事 bashを最新にするときにbrew利用を薦めない
とのことでhomebrewでの最新バージョン利用に一抹の不安が残ります。
確かにhomebrew回りにトラブルがあるとbashが使用できなくなる可能性もありそうですが、個人用途であるため、おかしくなったらtime machineで戻せばいいや、という安易な考えの下、かまわずお手軽にhomebrewでインストールすることにしました。
インストール
$ brew install bash
(実行前にbrew upgrade した方がよいと思います)
最後に問題が発生しました。
Error: Could not symlink include/bash /usr/local/include is not writable.
シンボリックリンクが作れません。確認してみると、/usr/local/include ディレクトリがそもそも存在しませんでした。
まず、/usr/local/に移動してからディレクトリを作ります。
$ sudo mkdir /usr/local/include
この段階で次のようになっています。
drwxr-xr-x 2 root wheel 64 6 6 17:10 include
再度 brew link bash 実行後も同じエラー。ディレクトリオーナーのroot以外にwrite権限がないことが問題のようです。
そこで、オーナーをチェンジします。
$ sudo chown -R $USER include
この段階で root →[ユーザー名]にオーナーが変わりました。
drwxr-xr-x 2 [ユーザー名] wheel 64 6 6 17:10 include
ここで再度 brew link bash
今度はうまくいきました。
インストールしたbashを利用できるように設定する
(コマンドをが入った部分を投稿しようとするとはじかれるので、ここだけ画像です)
にて
/usr/local/bin/bashを登録
インストールしたbashにシェルを変更
$chsh -s /usr/local/bin/bash
$ bash --version
GNU bash, バージョン 5.0.17(1)-release (x86_64-apple-darwin19.4.0)
うまくいきました。