美文网首页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编程-环境变量配置文件操作解析

    目录结构 一、环境变量配置文件-简介 变量类型:用户自定义变量、环境变量、预定义变量、位置参数变量环境变量作用:定...

  • linux-shell

    shell编程之环境变量配置文件环境变量作用:定义每个用户的操作环境,如path。source命令:source ...

  • adb

    adb环境变量配置 在shell运行时执行设置环境变量的命令即可。在.zshrc配置文件中添加一行: 重启shell即可

  • shell基础在工作中的应用

    shell编程基础:1. shell变量:环境变量、特殊变量、用户自定义变量2. shell输入输出3 shell...

  • shell编程之环境变量配置文件

    1.环境变量配置文件简介 系统中登录时起作用的环境变量: 放在etc中的会对所有目录生效,放在home目录下的只会...

  • shell编程之环境变量配置文件

    概述 加载顺序

  • Shell

    shell是一个命令行解析器,它接收应用程序/用户命令,然后调用操作系统内核.shell还是一个功能相当强大的编程...

  • Linux shell基础知识(二)

    摘要:8.6 管道符和作业控制 8.7/8.8 shell变量 8.9 环境变量配置文件 扩展...

  • shell编程第一季

    从今天开始,进入shell脚本编程大门,开启shell征途。 shell中的基本概念 1.环境变量IFS IFS(...

  • 从零开始学习Linux(三十九):Shell基础之环境变量配置文

    1、环境变量配置文件简介 环境变量配置文件中主要是定义对系统的操作环境生效的系统默认环境变量,比如 PATH、HI...

网友评论

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

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