Mac系统的环境变量,加载顺序为:
a. /etc/profile
b. /etc/paths
c. ~/.bash_profile
d. ~/.bash_login
e. ~/.profile
f. ~/.bashrc
其中a和b是系统级别的,系统启动就会加载,其余是用户接别的。c,d,e按照从前往后的顺序读取,如果c文件存在,则后面的几个文件就会被忽略不读了,以此类推。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。这里建议在c ~/.bash_profile 中添加环境变量
最终 让其生效 source ~/.xx
mac 系统升级后,默认 shell 改变 (命令检查 )
echo $SHELL
cat/etc/shells #查看安装了哪些shell
下述 是一个解决方案 也可以改到.zprofile 中
创建 ~/.bash_profile文件
vim ~/.bash_profile文件,进行环境变量的配置
完了之后使用zsh终端发现配置的环境变量还是无效,每次打开zsh都需要手动source ~/.bash_profile
解决方案:修改zsh的配置文件,让其在每次启动的时候来读取~/.bash_profile里面的配置。 vim~/.zshrc 在文件的最后面加上 source~/.bash_profile
source ~/.zshrc 使其立即生效
OK~
.zshrc
主要用在交互shell,所以主要是为shell服务的,比如对shell做的一些个性化设置都可以在这里写入
.zprofile
在用户登录时shell 环境下的单独配置。给zsh用户的一个.zlogin的替代品,所以我们如果使用了.zlogin就不必再关心此文件
可以理解为
.zshrc 是全局的环境变量配置, .zprofile 为单独某个用户的环境变量配置
文章评论