一 简介

环境变量配置文件中,主要是定义对系统的操作环境生效的系统默认环境变量,比如PATH,HISTSIZE,PS1,HOSTNAME等默认环境变量

主要是下面这个5种

finalShell 私钥保存路径_linux shell


我们之前设置的一些变量,都是临时生效,如果想要让变量重启后还生效,就需要写入这些配置文件中,写完之后,如果不想重启,立即生效用source 配置文件或者. 配置文件,说到这里,让我想起了编译android系统时的一个配置文件,/build/envsetup.sh,每次我们新clone一份代码,不想全部编译,而是用mm编译其中一个模块时,都需要先source envsetup.sh,当时不太理解为什么,现在知道了,因为mm命令在这个配置文件中,需要让这个配置文件里面的环境变量或者Shell命令在当前系统中生效,需要用source的方式。二 作用

finalShell 私钥保存路径_linux shell_02


这个流程有两个方向,上面横着走的是用户通过重新登录的流程,下面这个是不通过登录,直接切换用户会走的流程,这里有一个注意点,比如我一个变量在流程靠前的配置文件中定义了,在后面的文件又定义,以后面的为准,我们来分别看下:

首先看/etc/profile的作用

定义USER变量,LOGNAME变量,MAIL变量

finalShell 私钥保存路径_环境变量_03


定义PATH变量

finalShell 私钥保存路径_finalShell 私钥保存路径_04


finalShell 私钥保存路径_finalShell 私钥保存路径_05


定义HOSTNAME变量,HISTSIZE变量,umask

finalShell 私钥保存路径_linux shell_06


调用/etc/profile.d/*.sh文件

finalShell 私钥保存路径_配置文件_07


我们来看下这个目录下的sh文件

finalShell 私钥保存路径_finalShell 私钥保存路径_08


看下lang.sh

finalShell 私钥保存路径_bash_09


这里面主要定义LANG这个变量~/.bash_profile

finalShell 私钥保存路径_环境变量_10


调用了~/.bashrc文件

在PATH变量后面加入了”:$HOME/bin”~/.bashrc

finalShell 私钥保存路径_finalShell 私钥保存路径_11


定义了一些默认的别名

调用/etc/bashrc/etc/bashrc

定义PS1变量

finalShell 私钥保存路径_linux shell_12


定义PATH变量,umask

finalShell 私钥保存路径_环境变量_13


调用/etc/profile.d/*.sh文件

finalShell 私钥保存路径_finalShell 私钥保存路径_14

三 其他配置文件和登录信息

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

~/.bash_logout

finalShell 私钥保存路径_环境变量_15


我们可以看到这个文件目前还是空的,如果想在注销的时候做什么动作,可以在这里写,比如我把history清空2 ~/.bash_history

这个之前已经说过了,历史命令

finalShell 私钥保存路径_环境变量_16

3 Shell登录信息

本地终端欢迎信息/etc/issue

finalShell 私钥保存路径_finalShell 私钥保存路径_17


finalShell 私钥保存路径_bash_18


远程终端欢迎信息/etc/issue.net

转义符在这个文件中没有作用,是否显示由/etc/ssh/sshd_config决定

加入”Banner /etc/issue.net” 才能显示,记得重启ssh服务登录后欢迎信息/etc/motd

finalShell 私钥保存路径_linux shell_19


我们看到这里是空的,加一行Welcome!

finalShell 私钥保存路径_配置文件_20


不管是本地还是远程,都可以显示此欢迎信息

好了,环境变量配置文件就总结到这里,如有问题,欢迎指正,谢谢。