mac&linux配置环境变量详解

本文介绍了如何在Shell中配置和使用环境变量,强调了`export`命令的作用以及在`.bash_profile`文件中配置多个路径的方法。同时,提到了在macOS环境下,由于默认解释器可能是zsh,配置环境变量需要编辑`.zshrc`文件。当解释器为bash时,使用`.bash_profile`。文章还提醒读者,若解释器为zsh,直接编辑`.zshrc`或在其中source `.bash_profile`来确保环境变量生效。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、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

参考:

linux中的“~”、“/”、“./”分别代表什么?_wangjingyuing的博客-CSDN博客_linux ~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_喵酱_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值