一、什么是环境变量??? 环境变量是在操作系统中具有一个特定名字的对象,它包含了一个或多个应用程序所将要使用到的信息。环境变量相当于给系统或用户应用程序设置的一些参数,具体什么作用这当然和具体的环境变量有关。
二、Linux下的环境变量 linux是一个多用户的操作系统,每个用户登录系统之后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认的环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。
在linux中,环境变量一般用大写加下划线命名。环境变量就相当于一个指针,当我们要查看指针所指向的值的时候需要解引用,同样的,当我们要想查看环境变量里面的值的时候,需要在前面加$引用。
linux的变量分为环境变量和本地变量: 环境变量:是一种全局变量,存在所有的shell中,在登录的时候就有系统定义的环境变量了。linux的环境变量具有继承性,即shell会继承父shell的环境变量。 本地变量:当前shell中的变量,本地变量中包含环境变量。linux的本地变量的非环境变量不具备继承性。
在linux下面的变量按照生存周期可分为两类: 1、永久的:需要修改配置文件,变量永久的生效。 2、临时的:使用export命令声明即可,变量在关闭shell时失效。
三、常见的环境变量 1、PATH:指定命令的搜索路径。 我们可以看到,在当前目录下,默认的PATH的值。它表示当我们在当前目录下执行一条命令时命令的搜索路径。每一个目录都是以冒号隔开的。例如,当我们执行一个可执行程序是,系统就会到这些目录下面去找,在这些目录下找到的话才执行,找不到的话就不执行。
2、HOME:指定用户的主工作目录(即用户登录到Linux系统时,默认的目录)
2.1普通用户下的主工作目录:
2.2root下的主工作目录:
可以看到,环境变量是一个变量,随着用户的不同,它的值也就不同。
3、HISTSIZE:保存历史命令记录的条数 在linux中可以查找以前输入的命令,HISTSIZE这个环境的值就表示最多保存的记录的数目。
可以看到,上面显示能够保存1000条。
4、LOGNAME:显示当前用户的登录名
我是用admin这个用户登录的。
可以看到,在root权限下仍然是显示登录用户是admin。
5、HOSTNAME:指主机的名字,应用程序要是用到主机名的话就是从这个变量中获取的。
可以看到,我的主机的名字是bogon。
6、SHELL:指当前用户使用的是那种Shell。
可以看到,当前用户使用的是/bin/bash。
7、LANG/LANGUGE:和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。
可以看到,当前环境下使用的编码集是UTF-8,它表示支持中文输入,因为我装了中文输入法。
8、MALL:指当前的用户邮件存放的目录。
在当前用户下,邮件存放的目录如上图。
9、PS1:命令基本提示符,对root是#,对普通用户是$。
10、PS2:附属提示符,默认是” |