美文网首页linux&shellLinux_Systemlinux
[LN_09] Shell编程-环境变量配置文件操作解析

[LN_09] Shell编程-环境变量配置文件操作解析

作者: Fighting_001 | 来源:发表于2019-02-05 17:34 被阅读104次

    目录结构

    一、环境变量配置文件-简介
        1. source命令
        2. 环境变量配置文件-简介
    二、环境变量配置文件的功能
        1. /etc/profile 的作用
        2. ~/.bash_profile的作用
        3. /etc/bashrc的作用
    三、其他环境变量配置文件
        1. 注销时生效的环境变量配置文件
        2. 其他配置文件
        3. Shell登录提醒信息
    

    一、环境变量配置文件-简介

    变量类型:用户自定义变量、环境变量、预定义变量、位置参数变量
    环境变量作用:定义每个用户的操作环境。如:PATH、PS1(命令提示符变量)

    1. source命令

    # 使配置文件重新加载,立即生效
    # 方式1:
    source 配置文件
    # 方式2:
    . 配置文件
    

    如:
    source ./bashrc
    . ./bashrc

    2. 环境变量配置文件-简介

    环境变量配置文件中主要定义对系统操作环境生效的系统默认环境变量,如:PATH。PATH、HISTSIZE、PS1、HOSTNAME等环境变量写入对应的环境变量配置文件,重启系统or退出再登录,即可直接生效(永久生效),不需要重新定义

    登录时生效的环境变量有:

    /etc/profile
    /etc/profile.d/*.sh
    /etc/bashrc
    ~/.bash_profile
    ~/.bashrc
    

    PS:放于 /etc目录下的环境变量配置文件,对所有用户都有效;放于家目录 ~下的环境变量配置文件,只对当前登录用户起作用

    二、环境变量配置文件的功能

    正常完整启动路线:

    /etc/profile-->/etc/profile.d/*.sh-->/etc/profile.d/lang.sh-->/etc/sysconfig/i18n

    /etc/profile-->~/.bash_profile-->~/.bashrc-->/etc/bashrc-->命令提示符
    非完整启动路线:

    /etc/profile-->~/.bash_profile-->~/.bashrc-->/etc/bashrc-->/etc/profile.d/*.sh-->/etc/profile.d/lang.sh-->/etc/sysconfig/i18n

    PS:以上符号“-->”表示调用关系,即上一级调用下一级

    1. /etc/profile 的作用

    USER变量
    LOGNAME变量
    MAIL变量
    PATH变量
    HOSTNAME变量
    HISTSIZE变量
    umask
    调用/etc/profile.d/*.sh文件

    umask权限

    # 查看系统默认权限
    umask
    

    PS:
    1)文件的最高权限为666(读、写;rw-rw-rw-)
    2)目录的最高权限为777(读、写、执行;rwxrwxrwx)
    3)权限不能使用数字进行换算,必须使用字母
    4)umask定义的权限,是系统默认权限中准备丢弃的权限(将权限数字换算成字母表示,然后将文件or目录的权限减去umask设置的默认权限,通过字母相减)

    umask设置的权限,如:022,换算成字母:----w--w-
    目录最高权限为777,换算成字母:rwxrwxrwx
    文件最高权限为666,换算成字母:rw-rw-rw-
    ① 初始创建一个目录的默认权限为:
    rwxrwxrwx
    ----w--w-
    ------------------
    rwxr-xr-x(755)
    ② 初始创建一个文件的默认权限为:
    rw-rw-rw-
    ----w--w-
    ------------------
    rw-r--r--(644)

    启动路线①调用关系

    2. ~/.bash_profile的作用

    调用了~/.bashrc文件
    在PATH变量后面加入了":$HOME/bin"这个目录(变量叠加)

    3. /etc/bashrc的作用

    PS1变量
    umask
    PATH变量
    调用/etc/profile.d/*.sh文件

    三、其他环境变量配置文件

    1. 注销时生效的环境变量配置文件

    ~/.bash_logout

    ~/.bash_logout文件初始时未配置有效内容,可根据各自需要设置,如配置清空历史命令的操作:history -c

    2. 其他配置文件

    ~/.bash_history
    历史命令的保存文件

    3. Shell登录提醒信息

    转义符 作用
    \d 当前系统日期
    \s 操作系统名称
    \l 登录的终端号
    \m 硬件体系结构(i386、i686)
    \n 主机名
    \o 域名
    \r 内核版本
    \t 当前系统时间
    \u 当前登录用户的系列号

    【场景1】本地终端提醒信息配置:/etc/issue
    【场景2】远程终端提醒信息配置:/etc/issue.net
    1)在/etc/issue.net文件中不能使用转义符
    2)远程终端提醒信息显示的开关,由ssh配置文件/etc/ssh/sshd_config决定,需要在其中加入一行"Banner /etc/issue.net"才会开启该功能(需要重启ssh服务:service sshd restart)
    【场景3】本地登录or远程登录,登录后都可显示提醒信息配置:/etc/motd

    相关文章

      网友评论

        本文标题:[LN_09] Shell编程-环境变量配置文件操作解析

        本文链接:https://www.haomeiwen.com/subject/crpmsqtx.html