bash的配置文件:
分为两个类型:
profile:通过交互式登陆的shell进程进行登陆提供配置
bashrc:通过非交互式登陆的shell进程提供配置
登陆类型:
交互式登陆shell进程:
1、直接通过某终端输入账号密码后打开的shell进程为交互式登陆shell进程
2、使用su命令:su-USERNAME,或者使用su-l USERNAME执行登陆切换
非交互登陆shell进程:
1、su USERNAME 执行登陆切换用户(-)
2、图形界面下打开的终端
3、运行脚本。(在运行脚本时bash解释器会打开一个子shell)
profile类:
全局配置文件: 对所有的用户都有效
/etc/profile
/etc/profile.d/.sh
用户个人的配置文件:仅对当前用户有效
~/.bash_profile
功能:
1、用于定义环境变量
2、在打开用户终端时就会运行脚本或者命令
bashrc类:
全局配置文件:对所有用户都有效
全局:/etc/bashrc
用户个人:仅对当前用户有效
~/.bashrc
功能:
1、定义本地变量
2、定义命令别名 (alias)
注意:仅管理员才能修改全部配置文件
在个人的配置文件和全局的配置文件定义的变量发生冲突时,后读取的配置文件为最终变量
配置文件的读取次序:
交互式登陆shell进程:
/etc/profile—> /etc/profile.d/—> ~/.bash_profile -->
~/.bashrc–> /etc/bashrc(登陆系统时是按照这个次序加载)
非交互式登陆shell进程:
~/.bashrc --> /etc/bashrc --> /etc/profile.d/* (脚本的运行顺序是取决于这个步骤流程)
通过配置文件的特性立即生效:
1、通过命令行重新定义一次(通过命令行定义的是立即有效的,但是只对当前shell进程的生命周期有效)
2、让shell进程重读一次配置文件
source /PATH/FROM/CONF_FILE 或
. /PATH/FROM/CONF_FILE
profile和bashrc
最新推荐文章于 2023-09-13 13:10:26 发布