Mac中.bashrc或.bash_profile不能自动生效
.bashrc 或者 .bash_profile 无法自动加载原因分析
问题描述
熟练使用Linux的人会知道,环境变量是在~/.bashrc
或~/.bash_profile
中进行配置的;在Mac OS中,同样也可以在这两个文件中配置环境变量,但是每次打开命令行时都需要输入source ~/.bashrc或source ~/.bash_profile才能生效,无法自动生效。
解决方案
需要注意的一点是,与Linux系统不同的是,在Mac OS中环境变量的默认配置文件为~/.zshrc
而不是~/.bashrc
或~/.bash_profile
- 第一种解决方法就是我们可以将所有的环境变量配置到~/.zshrc文件中即可,每次打开命令行时都会自动生效;
- 第二种解决方法是我们将环境变量仍然配置到~/.bashrc或~/.bash_profile中,但是我们在~/.zshrc文件的末尾追加一行source ~/.bashrc或source ~/.bash_profile即可实现每次打开命令行时,系统自动读取环境变量信息。
有关文件
按一定顺序加载,加载到合适的,即不继续加载。
https://scriptingosx.com/2017/04/about-bash_profile-and-bashrc-on-macos/
- .profile
- .bashrc
- .bash_profile
- .bash_login
/etc/profile
/etc/bashrc
/etc/bashrc_Apple_Terminal
if it exists: ~/.bash_profile
when ~/.bash_profile does not exists, ~/.bash_login
when neither ~/.bash_profile nor ~/.bash_login exist, ~/.profile
~/bash_profile can optionally source ~/.bashrc