首先,shell分为登录式shell和非登录时shell,两者的读取配置文件的顺序是不一样的.
登录式shell读取配置文件的顺序为 /etc/profile -> /etc/profile.d/*.sh -> ~/.bash.profile -> ~/.bashrc -> /etc/bashrc
非登录式shell读取配置文件的顺序为 ~/.bashrc ->/etc/bashrc -> /etc/profile.d/*.sh
/etc/profile 文件中设定的环境变量,运行的命令或脚本,针对所有用户有效
/etc/bashrc 文件中设定的本地变量,定义的别名,针对所有启动的shell程序的用户有效
这两个配置文件是全局的。
~/.bash_profile 作用跟/etc/profile是一样的,只不过针对的是某一个用户
~/.bashrc的作用跟/etc/bashrc也是一样的,只不过针对的也是某一个用户