bash的配置文件

bash中的配置文件

通过使用配置文件为用户提供了不同的选项来获取不同的bash使用特性。不同的配置文件的作用范围也是不一样的。bash的配置文件根据作用范围可以分为两类:

  • 全局配置文件 对所有的用户有效
    配置文件路径:
    /etc/profile
    /etc/profile.d/*.sh 配置文件片段
    /etc/bashrc
    /etc/bashrc

  • 用户配置文件 仅仅对当前的用户生效
    ~/.bash_profile
    ~/.bashrc

按功能来划分配置文件,分为两类:

  • profile类: 主要为交互式登录的shell提供配置选项
    全局profile: /etc/profie; /etc/profile.d/*sh
    用户profile: ~/.bash_profile
    作用:
    (1)定义环境变量
    (2)运行命令或是脚本
    用法:
    如果要在交互式登录shell时生效,那么可以讲要定义的全局变量/要执行的脚本写在该配置文件中即可.
  • bashrc类: 主要为非交互式登录的shell提供配置选项
    全局bashrc: /etc/bashrc
    用户bashrc: ~/.bashrc
    作用:
    (!)定义命令别名
    (2)定义本地变量
    用法: 将要使用的变量|变量定义在指定范围的bashrc中

(非)交互式shell

交互式登录shell:
(1)通过终端输入账户/密码登录
(2) 使用"su - userName" | "su -l username"切换的用户

交互式登录shell 获取配置文件的机制
读取顺序 /etc/profile -> /etc/profile.d/*.sh -> ~/.bash_profile -> ~/.bashrc -> /etc/bashrc
即: bashrc 对交互式登录也是有效的,如果由重复配置,那么后面的文件会覆盖之前的文件。

非交互式登录:
(1) su userName
(2) 图形界面打开的终端
(3) 执行脚本时打开的(子) shell

非交互式登录shell 获取配置文件的机制
读取顺序:
~/.bashrc -> /etc/bashrc -> /etc/profile.d/*.sh
即: 非交互式登录不会读取/etc/profile中的配置

编辑配置文件后的生效方式:
(1) 重新登录;
(2) 使用source 命令重新读取配置文件
(3)./配置文件

你可能感兴趣的:(bash的配置文件)