当你登录linux 系统时,bash shell 会作为登录shell 启动,登录shell 会从5个不同的启动文件里读取命令:
1. /etc/profile 是系统上默认的bash shell 的启动文件,每个用户登录都会执行这个文件。
下面是摘抄一部分内容
----------------------------------------------------------
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
if [ "${-#*i}" != "$-" ]; then
. "$i"
else
. "$i" >/dev/null 2>&1
fi
fi
done
----------------------------------------------------------
这部分的意思是遍历 /etc/profile.d/ 目录下所有的 .sh 文件并执行。
持久化的设定不要放到/etc/profile 里面,好像是升级linxu 会把这个文件更新了。
所有要放到 /etc/profile.d/下
2.$HOME/.bash_profile
3.$HOME/.bashrc
4.$HOME/.bash_login
5.$HOME/.profile
2~5 是登录用户的启动文件,执行顺序是只有有一个被找到,余下的会被忽略,所以不是全部都执行哦。~
这些启动文件的作用是配置用户运行的环境变量,执行相应的shell 脚本等等。