linux 配置文件(启动文件、环境文件)启动顺序
1、登录shell
登录shell时,linux会按一定规则读取启动几个配置文件:
/ect/profile
$HOME/.bash_profile
$HOME/.bashrc
$HOME/.bash_login
$HOME/.profile
其中 /ect/profile 文件是系统默认的主启动文件,系统上每个用户登录时都会执行;
a、命令行登录和ssh登录,shell会按照以下顺序,运行第一个被找到的文件,余下的会被忽略:
$HOME/.bash_profile
$HOME/.bash_login
$HOME/.profile
上面没有 $HOME/.bashrc ,因为该文件一般通过其他文件运行。
b、图形界面登录,只加载 /ect/profile 和 $HOME/.profile ,其他的会被忽略。
对于 no-login shell,即图形界面打开的shell,只会读入 $HOME/.bashrc 文件,不会检查 /etc/.profile 等其他登录shell文件。
2、交互式shell
不是登录系统时启动,提供命令行提示符来输入命令。
(不会访问 /etc/profile 文件,会检查 $HOME/.bashrc 文件)
3、非交互式shell
系统执行脚本时所用,没有命令行提示符。
参考:
https://blog.csdn.net/yanjiangbo/article/details/6427580
《Linux命令行与shell脚本编程大全》(第三版)