Yyqingmofeige 2019-12-11
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退出或者重启系统。
5.环境变量配置在linux系统下,需要将可执行文件配置到环境变量或将文件移动到属于环境变量的目录里面方法一:将文件移动到属于环境变量目录中sudo mv chromedriver /user/bin
写脚本涉及到数据库的配置信息,然后上面要求这种关键信息不能体现到脚本中,哦,那怎么办,那我去哪里读取数据库信息呢?从运行脚本的机器的环境变量里读取数据库信息,这样脚本中全是代码,就没有明文配置信息了。