6.1-环境变量概念
环境变量
- 在Linux中,很多程序和脚本都通过环境变量来获取系统信息、存储临时数据和配置信息;
- bash shell使用环境变量来存储有关shell会话和工作环境信息;
- 允许你在内存中存储数据,以便运行在shell的程序和脚本访问;
是存储永久数据的一种简单方法,用来识别用户账户、系统、shell的特性,以及任何你需要存储的数据; - 在bash shell中,环境变量分为:
全局变量:不仅对shell会话可见,对所有shell创建的子进程也可见;
局部变量:只对创建它们的shell可见;
shell环境变量是所有shell程序都会接收的参数,shell程序运行时,都会接收一组变量,这组变量就是环境变量
常见的环境有:
- PATH shell命令的搜索命令,以冒号为分隔符,包含一系列路径名
- HEME 用户home的路径名,也是cd命令的默认参数
- HISTFILE 命令历史文件
- HISTSIZE 命令历史文件中最多包含的命令条数
- SHELL SHELL的路径名,即linux当前正在使用的shell
全局环境变量
- Linux在你开始bash会话之前就设置了一些全局的环境变量;
- 系统环境变量一律使用大写字母以区别普通用户的环境变量;
- printenv命令查看全局环境变量,大部分都是系统在用户登录系统时设置的;
- echo命令显示单个环境变量的值;
- 在当前shell会话的子进程中也是可见的
局部环境变量
- Linux系统也默认定义了标准局部环境变量;
- set命令查看某个特定进程的所有环境变量,这也包含全局环境变量
(通过printenv命令能看到的全局环境变量都出现在了set命令的输出中,但是set命令输出中还有一些其它的环境变量,这就是局部环境变量)