Linux环境变量史上最全版讲解
Posted 我想月薪过万
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux环境变量史上最全版讲解相关的知识,希望对你有一定的参考价值。
Linux为什么需要环境变量
因为 Linux 是一个多用户多任务的操作系统,每个用户所需要的系统环境是不一样的,所以,我们需要根据不同用户的不同需求来设置不同的环境变量,这样才能满足用户的需求。
全局变量 vs 环境变量
全局变量 是直接定义的变量,他只能在当前shell进程里访问。
环境变量 是shell变量的一种。
export 只能保证变量在子shell进程里能够被获取到
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# abc=123 #创建一个shell变量
[root@iZuf6a7sd2zy3fpen7rmbhZ yiqi]# echo $abc #打印定义的shell变量
123
[root@iZuf6a7sd2zy3fpen7rmbhZ yiqi]# /bin/bash #新建一个shell环境,属于刚才shell的子环境
[root@iZuf6a7sd2zy3fpen7rmbhZ yiqi]# echo $abc #输出为空,即未定义
[root@iZuf6a7sd2zy3fpen7rmbhZ yiqi]# exit #退出子环境
exit
[root@iZuf6a7sd2zy3fpen7rmbhZ yiqi]# export abc #暴露变量abc,但是只对shell子环境有效
[root@iZuf6a7sd2zy3fpen7rmbhZ yiqi]# /bin/bash #切换到shell子环境
[root@iZuf6a7sd2zy3fpen7rmbhZ yiqi]# echo $abc #输出变量
123
shell配置文件
与 Bash Shell 有关的配置文件主要有
shell执行顺序
修改配置文件
总结:这么多配置文件我们不用死记硬背,我们要清楚的明白,每当你打开一个 bash shell 终端窗口的时候,都会加载配置文件,而这个加载情况分为两种,一种是所有用户进入bash shell都会加载的配置文件,例如 /etc/ 下的。另外一种是特定用户进入bash shell才会加载的配置文件,例如特定用户 ~ 目录下的 .bashrc 文件。
shell启动方式对变量的影响
shell启动方式有三种,详细请看
- 当前进程中执行 source 和 .
- 子shell进程中执行: /bin/bash 和 ./ 。也就是说你用这个命令执行脚本所产生的的变量在当前进程访问不到。
以上是关于Linux环境变量史上最全版讲解的主要内容,如果未能解决你的问题,请参考以下文章