Shell环境变量设置方法详解
这是有区别的,如果环境变量不写入配置文件,那么当前 Shell 一旦终止,这个环境变量就会消失,而只有写入配置文件才会永久地在所有 Shell 中生效。
在 Linux 中一般通过环境变量配置操作系统的环境,如提示符、查找命令的路径、用户家目录等,这些系统默认的环境变量的变量名是固定的,我们只能修改变量的值。
当然,我们也可以手工定义环境变量,不过这些自定义的环境变量不能修改操作系统环境,其只是一个全局变量而已。
环境变量设置
环境变量和用户自定义变量的设置方法相比,只需通过 export 命令将变量声明为环境变量即可。命令如下:
[root@localhost ~]# export age="18"
#使用export声明的变量就是环境变量
[root@localhost ~]# gender=male
[root@localhost ~]# export gender
[root@localhost ~]# name="zhang san"
#把姓名声明为本地变量
[root@localhost ~]# export age="18"
#年龄声明为本地变量
[root@localhost ~]# gender=male
#性别声明为本地变量
[root@localhost ~]# export gender
#性别升级为环境变量
然后我们查询一下这些变量:
[root@localhost ~]# set
…省略部分内容…
gender=male
name='zhang san'
age=18
[root@localhost ~]# bash
#再调用一次bash,也就是进入子Shell
[root@localhost ~]# set
#再次查询变量
…省略部分输出…
age=18
gender=male
#在子Shell中只能看到环境变量"age"和"gender",而不能查询到用户自定义变量"name"
环境变量查询和删除
set 既可以查询所有的变量,也可以查询环境变量,我们刚刚 的实验就是使用 set 命令进行环境变量查询。当然,也可以使用 env 命进行环境变量的查询,命令如下:
[root@localhost ~]# env
HOSTNAME=localhost.localdomain
SELINUX_ROLE_REQUESTED=
SHELL=/bin/bash
…省略部分输出…
再来说说环境变量的删除。其实环境变量的删除方法和用户自定义变量是一样的,都使用 unset 命令,命令如下:
[root@localhost ~]# unset gender
[root@localhost ~]# env | grep gender
#删除环境变量gender
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算