BlankTar

about | blog | works | photo

macのbashはバージョンが古いそうです。色んなものが古いよね、macって。
そんなわけで、新しい機能は使えなかったりします。
**/*.txtとかやるとカレントディレクトリ以下の.txtファイルを列挙してくれるglobstarっていう機能はめちゃめちゃ便利なのですが、これもやっぱり使えません。残念。
というわけで、使えるようにしてみました。

とりあえず、homebrewで新しいbashを入れる。
$ brew install bash
多分macportsでも入るのでお好みで。

無事bashが入ったら、/etc/shellsにパスを追記します。
$ cat /etc/shells
# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
/usr/local/bin/bash
多分こんな感じになる。

最後に、ユーザのデフォルトシェルとして設定する。
$ chsh -s /usr/local/bin/bash
パスワードを聞かれるので、答えたら設定出来るはず。
non-standard shellとか言われたら、/etc/shellsの設定が間違っているので確認してください。

設定が完了したらターミナルを再起動してみて、
$ echo $BASH_VERSION
とかすると、新しいバージョン番号が表示されるはずです。

あとは
$ echo shopt -s globstar >> ~/.bash_profile
とかでしてお好みの設定をどうぞ。

参考: » Get yourself globstar, bash 4 for your Mac terminal Mister Morris
< cmakeにThe current CMakeCache.txt directory云々とかってエラー吐かれた。 pacemっていうARアプリ的なものを作った >