Linux Shell基础-环境变量配置文件
2016-11-14 10:40
323 查看
一 简介
环境变量配置文件中,主要是定义对系统的操作环境生效的系统默认环境变量,比如PATH,HISTSIZE,PS1,HOSTNAME等默认环境变量
主要是下面这个5种
![](https://img-blog.csdn.net/20161114094455118)
我们之前设置的一些变量,都是临时生效,如果想要让变量重启后还生效,就需要写入这些配置文件中,写完之后,如果不想重启,立即生效用source 配置文件或者. 配置文件,说到这里,让我想起了编译android系统时的一个配置文件,/build/envsetup.sh,每次我们新clone一份代码,不想全部编译,而是用mm编译其中一个模块时,都需要先source envsetup.sh,当时不太理解为什么,现在知道了,因为mm命令在这个配置文件中,需要让这个配置文件里面的环境变量或者Shell命令在当前系统中生效,需要用source的方式。
二 作用
![](https://img-blog.csdn.net/20161114095202503)
这个流程有两个方向,上面横着走的是用户通过重新登录的流程,下面这个是不通过登录,直接切换用户会走的流程,这里有一个注意点,比如我一个变量在流程靠前的配置文件中定义了,在后面的文件又定义,以后面的为准,我们来分别看下:
首先看/etc/profile的作用
定义USER变量,LOGNAME变量,MAIL变量
![](https://img-blog.csdn.net/20161114100536450)
定义PATH变量
![](https://img-blog.csdn.net/20161114100610755)
![](https://img-blog.csdn.net/20161114100643350)
定义HOSTNAME变量,HISTSIZE变量,umask
![](https://img-blog.csdn.net/20161114100744132)
调用/etc/profile.d/*.sh文件
![](https://img-blog.csdn.net/20161114100837414)
我们来看下这个目录下的sh文件
![](https://img-blog.csdn.net/20161114100921280)
看下lang.sh
![](https://img-blog.csdn.net/20161114101117140)
这里面主要定义LANG这个变量
~/.bash_profile
![](https://img-blog.csdn.net/20161114101507094)
调用了~/.bashrc文件
在PATH变量后面加入了”:$HOME/bin”
~/.bashrc
![](https://img-blog.csdn.net/20161114101630283)
定义了一些默认的别名
调用/etc/bashrc
/etc/bashrc
定义PS1变量
![](https://img-blog.csdn.net/20161114101817799)
定义PATH变量,umask
![](https://img-blog.csdn.net/20161114101946674)
调用/etc/profile.d/*.sh文件
![](https://img-blog.csdn.net/20161114102026678)
三 其他配置文件和登录信息
1 注销时生效的环境变量配置文件
~/.bash_logout
![](https://img-blog.csdn.net/20161114102235774)
我们可以看到这个文件目前还是空的,如果想在注销的时候做什么动作,可以在这里写,比如我把history清空
2 ~/.bash_history
这个之前已经说过了,历史命令
![](https://img-blog.csdn.net/20161114102537263)
3 Shell登录信息
本地终端欢迎信息/etc/issue
![](https://img-blog.csdn.net/20161114103449057)
![](https://img-blog.csdn.net/20161114103509978)
远程终端欢迎信息/etc/issue.net
转义符在这个文件中没有作用,是否显示由/etc/ssh/sshd_config决定
加入”Banner /etc/issue.net” 才能显示,记得重启ssh服务
登录后欢迎信息/etc/motd
![](https://img-blog.csdn.net/20161114103828420)
我们看到这里是空的,加一行Welcome!
![](https://img-blog.csdn.net/20161114103925168)
不管是本地还是远程,都可以显示此欢迎信息
好了,环境变量配置文件就总结到这里,如有问题,欢迎指正,谢谢。
环境变量配置文件中,主要是定义对系统的操作环境生效的系统默认环境变量,比如PATH,HISTSIZE,PS1,HOSTNAME等默认环境变量
主要是下面这个5种
我们之前设置的一些变量,都是临时生效,如果想要让变量重启后还生效,就需要写入这些配置文件中,写完之后,如果不想重启,立即生效用source 配置文件或者. 配置文件,说到这里,让我想起了编译android系统时的一个配置文件,/build/envsetup.sh,每次我们新clone一份代码,不想全部编译,而是用mm编译其中一个模块时,都需要先source envsetup.sh,当时不太理解为什么,现在知道了,因为mm命令在这个配置文件中,需要让这个配置文件里面的环境变量或者Shell命令在当前系统中生效,需要用source的方式。
二 作用
这个流程有两个方向,上面横着走的是用户通过重新登录的流程,下面这个是不通过登录,直接切换用户会走的流程,这里有一个注意点,比如我一个变量在流程靠前的配置文件中定义了,在后面的文件又定义,以后面的为准,我们来分别看下:
首先看/etc/profile的作用
定义USER变量,LOGNAME变量,MAIL变量
定义PATH变量
定义HOSTNAME变量,HISTSIZE变量,umask
调用/etc/profile.d/*.sh文件
我们来看下这个目录下的sh文件
看下lang.sh
这里面主要定义LANG这个变量
~/.bash_profile
调用了~/.bashrc文件
在PATH变量后面加入了”:$HOME/bin”
~/.bashrc
定义了一些默认的别名
调用/etc/bashrc
/etc/bashrc
定义PS1变量
定义PATH变量,umask
调用/etc/profile.d/*.sh文件
三 其他配置文件和登录信息
1 注销时生效的环境变量配置文件
~/.bash_logout
我们可以看到这个文件目前还是空的,如果想在注销的时候做什么动作,可以在这里写,比如我把history清空
2 ~/.bash_history
这个之前已经说过了,历史命令
3 Shell登录信息
本地终端欢迎信息/etc/issue
远程终端欢迎信息/etc/issue.net
转义符在这个文件中没有作用,是否显示由/etc/ssh/sshd_config决定
加入”Banner /etc/issue.net” 才能显示,记得重启ssh服务
登录后欢迎信息/etc/motd
我们看到这里是空的,加一行Welcome!
不管是本地还是远程,都可以显示此欢迎信息
好了,环境变量配置文件就总结到这里,如有问题,欢迎指正,谢谢。
相关文章推荐
- Linux学习(二十二)Shell基础(二)变量、环境变量配置文件
- Shell基础:shell变量、环境变量配置文件、shell特殊符_cut、sort、wc、uniq
- 第9章 Shell基础(4)_Bash的运算符及环境变量配置文件
- Linux shell和配置文件及环境变量
- Shell基础-环境变量配置文件-作用
- Shell基础-环境变量配置文件-简介
- Shell基础知识 (2) 之 管道符和作业控制、变量、环境变量配置文件
- Spring boot基础:配置文件配置变量、多环境的配置
- Shell基础-环境变量配置文件
- Shell基础-环境变量配置文件-其他配置文件和登录信息
- Shell基础-环境变量配置文件
- L24 shell基础知识(二)管道符-作业控制-shell变量-环境变量配置文件
- Shell基础(三):环境变量配置文件
- linux笔记:shell基础-环境变量配置文件
- centos shell基础 alias 变量单引号 双引号 history 错误重定向 2>&1 jobs 环境变量 .bash_history source配置文件 nohup & 后台运行 cut,sort,wc ,uniq ,tee ,tr ,split, paste cat> 2.txt <<EOF 通配符 glob模式 发邮件命令mail 2015-4-8 第十二节课
- shell基础-环境变量配置文件
- linux 环境变量配置及查找字符串文件方法
- GCC 环境变量 & eclipse CDT 头文件配置
- 转载_Linux中环境变量文件及配置
- mac pro 环境变量的配置 (当不存在 .bash_profile 文件的时候)