Mac OS X で zsh がログイン シェルとして設定されている場合、iTerm によって起動されると、zsh はログイン シェルとして実行されているとは見なしません。ただし、zsh は '-zsh' (arg[0] の最初の文字として '-' が付けられる) として起動され、ログイン シェルとして起動するはずであると見なされます。
したがって、ログイン シェルを bash に設定すると、bash は $0 の最初の '-' を認識してログイン シェルとして実行されますが、zsh はそうしません (そうすべきであるように見えますが)。
zshにarg[0]の「-」を認識させるか、iTermに--loginコマンドライン引数を指定してシェルを実行させる方法はありますか?
ベストアンサー1
chsh -s $(which zsh)
パスワードの入力を求められますが、設定を更新すると、そのマシンで開始する新しい iTerm/Terminal セッションはデフォルトで zsh に設定されます。