Linux环境变量

环境变量:是其值在程序外部设置的 变量,通常通过操作系统或微
服务 内置的功能设置。 环境变量由名称/ 值

系统环境变量基本上都是使用 全大写字母,以区别于普通用户的环境变量

全局变量

全局环境变量对于shell会话和所有生成的子shell都是可见的

可以使用env或printenv命令

printenv HOME    可以查看当前路径   可显示个别环境变量的值

echo $HOME       可以查看当前路径    显示变量的值   也可以把变量作为命令行参数

                             显示环境变量的当前值,这个值和父shell中的一模一样

 局部变量

局部变量则只对创建它们的shell可见

练习:
1. 查看env的输出
2. 查看printenv的输出
3. 查看set的输出
4. 在父shell中查看$PWD变量
5. 进入子shell,在子shell中查看$PWD变量

可以通过等号给环境变量赋值,值可以是数值或字符串。
如果要给变量赋一个含有空格的字符串值,必须用单引号来界定字符串的首和尾。变量名区分大小写。所有的环境变量名均使用大写字母,这是bash shell的标准惯例。如果是你自己创建的局部量或是shell 脚本,请使用小写字母。能够避免重新定义系统环境变量可能带来的灾难。
变量名、等号和值之间没有空格。
只能在当前shell中使用局部环境变量

设置用户定义变量

设置全局环境变量 :先创建一个局部环境变量,再通过export命令把它导出到全局环境中。
修改子shell中环境变量并不会影响到父shell中该变量的值。

练习:
1. 在父shell中设置局部变量,进入
子shell中查看
2. 在子shell中设置局部变量,退出
子shell后在父shell中查看

 

练习:
1. 在父shell中设置变量,export导出至全局环境
2. 进入子shell中查看设置的变量
3. 在子shell中给变量赋新值
4. 在子shell中使用export将赋新值的变量导出至全局并查看
5. 退出子shell,查看父shell中的该变量值

 

删除用户定义变量

        设置全局环境变量 :

unset命令+变量名可删除已经存在的环境变量

在unset命令中引用环境变量时,记住不要使用$(如果要用到变量,使用$;如果要操作变量,不使用$。用printenv显示某个变量的值除外)

练习:
1. 进入子shell中查看父shell中设置的全局环境变量
2. 在子shell中删除该全局环境变量
3. 退出子shell,查看父shell中的该变量值
4. 在父shell中删除该全局环境变量
5. 查看父shell中的该变量值

默认的shell环境变量的知识点

BASH 当前shell实例的全路径名

BASH_ALIASES  含有当前已设置别名的关联数组

BASH_CMDS 关联数组,包含shell执行过的命令的所在位置

ENV    如果设置了该环境变量,在bash shell脚本运行之前会先执行已定义的启动文件(仅用于当bash shell以POSIX模式被调用时)

EUID 当前用户的有效用户ID(数字形式)

GROUPS 含有当前用户属组列表的数组变量

HOSTNAME 当前主机的名称

LINES 定义了终端上可见的行数

PWD 当前工作目录

RANDOM 返回一个0~32767的随机数(对其的赋值可作为随机数生成器的种子)

UID 当前用户的真实用户ID(数字形式)

练习:
1. 建立一个组员名称的数组
2. 更改一位成员
3. 删除一位成员
4. 删除数组

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值