interactive login shell profile执行的顺序
1)先执行全局profile, /etc/profile
2)接着bash会检查使用者的HOME目录中,是否有 .bash_profile 或者 .bash_login或者 .profile,若有,则会执行其中一个,执行顺序为:
.bash_profile 最优先 > .bash_login其次 > .profile 最后
我发现ubuntu只有.profile文件。
/etc/profile: 此文件为系统的每个用户设置环境信息,它做了以下事情:
分两种情况:
1、没有使用/bin/sh
如果/etc/bash.bashrc文件存在,会执行该文件。并执行/etc/profile.d目录下所有.sh结尾的文件。
2、使用/bin/sh
root用户则设置命令行提示符为#
,否则为$
。并执行/etc/profile.d目录下所有.sh结尾的文件。
$BASH环境变量表示当前使用哪种shell。
看一下/etc/profile文件的内容就知道了: