linux环境变量(一)
bash shell用一个叫作环境变量(environment variable)的特性来存储有关shell会话和工作环境的信息(这也是它们被称作环境变量的原因)。这项特性允许你在内存中存储数据,以便程序 或shell中运行的脚本能轻松访问到它们。这也是存储数据的一种简便方法。
在bash shell中,环境变量分为:
? 全局变量
? 局部变量
♦全局变量
1、查看全局变量:
prientenv或者env
2、查看某个环境变量的值
用printenv,而不用env:
也可以用echo 显示变量的值,但是必须在被引用的环境变量前面加上"$"符号:
♦局部变量
linux没有专门的命令来查看局部变量,set命令会显示为某个特定进程设的所有环境变量,包括局部变量、全局变量 以及用户定义变量。
设置局部用户定义变量(只在当前用户当前shell可见,可用):
如果要给变量赋一个有空格的字符串,必须用引号引起来:
设置全局环境变量:export(在子shell中也可见)
在子shell改变或者删除全局变量globalenv的值,只在当前shell生效,不影响其在父shell的值!!!!
删除环境变量:unset
♦设置PATH环境变量
先写一个简单的shell脚本:
给脚本赋予可执行权限:
运行该脚本,提示“未找到命令”,因为在PATH变量中没有定义test.sh的路径,并且这里也没有指明test.sh的路径。
将test.sh所在路径加入PATH变量:
再次运行test.sh:运行成功
切换到任意路径再次运行:运行成功
通过这种方法对PATH变量的修改只能持续到shell退出或者重启系统。