1. ホーム
  2. bash

[解決済み] zsh から bash に入るとき ~/.bash_profile を読み込むには?

2023-06-16 17:58:57

質問

2年間bashを使ってきましたが、homebrewでOS Xをzshシェルに切り替えようとしました。そして、私はデフォルト(ログイン)シェルを zsh に設定し、ターミナルを起動したときにデフォルトで使用される zsh シェルであることを見て、それが適切に設定されていることを確認しました。

しかし、zshの中からbashシェルに入ろうとすると、読み込みができないようで ~/.bash_profile で定義されている aliases を使ってコマンドを実行できないためです。 ~/.bash_profile のように alias julia="~/juila/julia" などです。また、プロンプトはファイルで設定したものとは異なり、代わりに bash-3.2$ .

なぜか、ログインシェルをbashにし、bashの中からzshを入力すると ~/.zshrc は正しく読み込まれます。

では、なぜ bash を実行しても読み込まれないのはなぜですか?私の ~/.bash_profile はシンボリックリンクで ~/Dropbox/.bash_profile にシンボルリンクして、他のパソコンと同期させています。もしかしたら、それが問題を引き起こしているのでしょうか?

どのように解決するのですか?

インタラクティブな bash は、あなたの ~/.bash_profile を、ログインシェルであれば ~/.bashrc になります。

典型的な .bash_profile は次のようなものを含むでしょう。

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

だから .bashrc には、ログインシェルでも非ログインシェルでも実行されるコマンドを入れることができます。

もしあなたが bash -l ではなく、単に bash を読み取る必要があります。 .bash_profile .

参考にしてください。 https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html