一、shell语言解释&环境变量配置
在shell语言中,定义一个变量,并使变量生效,使用export。
如:
1、定义一个变量name=zhangsan
name=zhangsan
2、并使name变量生效
export name
3、调用/打印name变量
调用name变量时,方式一$name 方式二 ${name}
zhaohui@zhaohuideMBP ~ % echo $name
zhangsan
zhaohui@zhaohuideMBP ~ % echo ${name}
zhangsan
在~/.bash_profile 文件中,配置环境变量时,会遇到多个应用的环境变量配置。
多个应用的环境变量,都需要配置在 同一个path下。
查看当前系统下,所有程序的环境变量配置的path
zhaohui@zhaohuideMBP ~ % echo $path
/usr/bin /bin /usr/sbin /sbin /usr/local/bin /Library/allure-2.18.1/bin /Library/apache-jmeter-5.4.3/bin /opt/homebrew/bin /usr/bin /bin /usr/sbin /sbin /usr/local/bin /Library/allure-2.18.1/bin /Library/apache-jmeter-5.4.3/bin /Library/Frameworks/Python.framework/Versions/3.8/bin /usr/bin /bin /usr/sbin /sbin /usr/local/bin /Library/allure-2.18.1/bin /Library/apache-jmeter-5.4.3/bin /opt/homebrew/bin /usr/bin /bin /usr/sbin /sbin /usr/local/bin /Library/allure-2.18.1/bin /Library/apache-jmeter-5.4.3/bin
我们想要配置多个程序的环境变量,都需要写在同一个path下。
PATH=$JAVA_HOME/bin:$JMETER_HOME/bin:$PATH:$MAVEN_HOME/bin
export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
export PATH=${PATH}:/Library/allure-2.18.1/bin
1、多个环境变量,使用冒号分割:冒号用于将不同的路径或变量值连接起来,以构建一个完整的路径。
2、PATH=${PATH}:/Library/allure-2.18.1/bin
${PATH},表示前面的已存在的PATH环境变量的值,然后:冒号再拼接上后面alluere的路径:/Library/allure-2.18.1/bin,通过使用冒号将它们连接在一起,可以将两个路径组合成一个新的 PATH 变量。
二、解释器 zsh 或者 bash
这里只是说明mac与linux环境变量的配置。
在网上,百度一些应用的安装,经常遇到要配置环境变量。
如果是mac电脑,这里有坑啊,首先要查看自己设备的解释器是啥
zhaohui@zhaohuideMacBook-Pro ~ % echo $SHELL
/bin/zsh
zsh 与bash 配置的文件可不一样啊
zsh编辑环境变量,需要:
vim ~/.zshrc
source ~/.zshrc
bash编辑环境变量,需要:
vi .bash_profile
vi ~/.bash_profile
1、.代表隐藏文件
.bash_profile 表示一个名为.bash_profile的隐藏文件
vi .bash_profile ,就是编辑当前目录的隐藏文件.bash_profile
2、环境变量配置与文件名无关与文件路径无关
我们在配置环境变量后,都要声明一下
source ~/.bash_profile
或者
source .bash_profile
2.1 与文件名无关,只要source声明环境变量就可以了
2.2 与文件路径无关,一台设备上可以有多个目录下的.bash_profile 文件,只要声明了就可以
3、“~” :表示主目录,也就是当前登录用户的用户目录。
比如:我登录用户是chen,~ 代表的就是 /home/chen/
vi ~/.bash_profile
source ~/.bash_profile
表示的就是编辑主目录下的 .bash_profile 文件。
4、建议
为了环境变量的统一,我建议还是使用
vi ~/.bash_profile
source ~/.bash_profile
这样方便统一管理,和寻找。
5、其他
1、“~” :表示主目录,也就是当前登录用户的用户目录。
2、“/” :是指根目录:就是所有目录最顶层的目录,如下:
3、“./” :表示当前目录,./ 一般需要和其他文件夹或者文件结合使用,指代当前目录下的东西。
4、“..” :表示上级目录
问题处理:
我mac电脑,像这样配置了环境变量,但是下次重启电脑之后,jmeter的环境变量就失效了。
因为:
我的电脑shell解释器,是zsh
使用可查看当前设备的shell解析器。
zhaohui@zhaohuideMacBook-Pro ~ % echo $SHELL
/bin/zsh
而.bash_profile文件是bash解释器的环境变量配置文件。
解决办法
方法1、如果设备是zsh 解释器的话,直接编辑~/.zshrc文件
vim ~/.zshrc
source ~/.zshrc
方法2、
编辑 ~/.zshrc文件,在里面添加source ~/.bash_profile,然后再source ~/.zshrc
1、编辑
vim ~/.zshrc
2、添加
在里面添加source ~/.bash_profile
3、使环境变量生效
source ~/.zshrc
参考: