1. 配置文件加载顺序
OS X系统的配置文件,加载顺序为:
/etc/profile
/etc/paths
~/.bash_profile
~/.bash_login
~/.profile
~/.bashrc
/etc/profile
和/etc/paths
是系统级别的,系统启动就会加载,
后面几个是当前用户级的环境变量。
~/.bash_profile
,~/.bash_login
,~/.profile
按照从前往后的顺序读取,
如果~/.bash_profile
文件存在,则后面的几个文件就会被忽略不读了,
如果~/.bash_profile
文件不存在,才会以此类推读取后面的文件。
~/.bashrc
没有上述规则,它是bash shell打开的时候载入的。
2. PATH变量
设置PATH的语法为:
export PATH="$PATH:<PATH 1>:<PATH 2>:<PATH 3>:...:<PATH N>"
注:
(1)环境变量更改后,重启后才可生效。如果想立刻生效,则可执行下面的语句:
$ source 相应的配置文件
(2)如果默认shell是bash,那么shell启动时会触发.bashrc
,
如果默认shell是zsh,那么shell启动时会触发.zshrc
。
以下命令可以得到系统的默认shell,
$ echo $SHELL
> /bin/zsh
(3)环境变量既可以加到$PATH
头部,也可以加到$PATH
尾部。
例如mac中自带emacs
的位置在/usr/local/emacs
$ type emacs
> emacs is /usr/local/emacs
如果我们想更改emacs
的默认路径,就得将新路径加到$PATH
前面。
(别忘了执行source .zshrc
)
export PATH="/Applications/Emacs.app/Contents/MacOS:$PATH"
或者增加alias,
alias emacs="/Applications/Emacs.app/Contents/MacOS/Emacs"
否则,加载到$PATH
后面,
type emacs
仍然还是emacs is /usr/local/emacs
。