bash变量--环境变量

环境变量是什么?

用户自定义变量只在当前的shell中生效,而环境变量会在当前shell和这个shell的所有子shell当中生效。如果把环境变量写入响应的配置文件中,那么这个环境变量就会在所有的shell中生效。

设置环境变量

申明变量

export  变量名=变量值

查询环境变量

env

删除变量

unset 变量名

使用命令pstree可以查看当前的shell

我们切换到bash下,在用pstree查看当前shell

现在我们定义三个变量name sex age 其中将name 和 sex定义为环境变量 ,将age定义为用户变量

用set在当前shell中查看变量

用env查看环境变量

在使用bash命令切换到子bash

在用set查看当前shell的变量

发现只有环境变量而没有用户变量,这说明环境变量是在当前shell和其子shell中生效的。

下面重点介绍两个环境变量PATH 和PS1

PATH:系统查找命令的路径

PATH="$PATH":/root/sh

PATH变量叠加

例如:我们写个shell脚本,来执行它

我们必须使用相对路径和绝对路径来执行,加入我们不想这么执行,就必须将hello.sh写入PATH中的路径,或者将sh命令叠加到PATH后面

一:

二:

PS1:定义系统提示符的变量

改变PS1

以上的所有操作都是临时改变的,重启后无效。要想永久的更改需要写入配置文件中。