MAC 环境变量那些事

2019-05-15  本文已影响0人  大城子

二次原创参考文章:mac下添加环境变量

之前一直做的是iOS开发, 一直都没有碰见过环境变量的事情, 最近又弄小程序又弄java后台环境变量这个词经常出现, mysql, node.js, maven等都涉及到了, 因此趁机梳理一下

1.环境变量的作用

我们先来看这样的一个使用场景1,我们有一个程序Java,需要读取某个文件(/data/file.txt)。 那么我们在运行的时候是不是需要做如下的步骤:

1.1使用场景1

如果我们又有JDK1.7,又有JDK1.8,而且需要经常的切换,那么怎么办?
可以配置局部变量比如:

  1 export JDK1.7=/usr/apps/jdk1.7
  2 export JDK1.8=/usr/apps/jdk1.8
  3 export PATH=$JDK1.7/bin

ok,有了上面的介绍,我们大概就可以知道环境变量到底有什么用处了。用处就是可以在操作系统的各个目录下,都能访问到需要的工具目录内的内容,和Windows的桌面的思想十分相似,而且相当于在系统的各处都具有这个桌面的快捷方式。

2.Mac系统环境变量在哪里设置

a. /etc/profile 
b. /etc/paths 
c. ~/.bash_profile 
d. ~/.bash_login 
e. ~/.profile 
f. ~/.bashrc 

其中a和b是系统级别的的,系统启动就会加载,其余是用户接别的。c,d,e按照从前往后的顺序读取,如果c文件存在,则后面的几个文件就会被忽略不读了,以此类推。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。这里建议在c中添加环境变量,以下也是以在c中添加环境变量来演示的:

3.添加环境变量:
export MYSQL_HOME=/usr/local/mysql/bin
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
export CLASS_HOME=$JAVA_HOME/lib
export MAVEN_HOME=/Users/LittleP/Documents/maven-3.6.1

export PATH=$PATH:$MYSQL_HOME:$JAVA_HOME/bin:$CLASS_HOME:$MAVEN_HOME:


科普一下(这段可跳过)在Mac中我们的环境是添加到PATH路径下的,系统运行的时候会直接去找/usr/libexec/path_helper这个文件,里面内容就是我们通过环境变量设置的PATH,所以我们设置环境变量是通过PATH来设置的。

image.png

可以看到它里面加载了我们设置的环境变量。

export MAVEN_HOME=/usr/local/apache-maven-3.6.0
export PATH=$PATH:$MAVEN_HOME

添加格式: export + 自定义名字(MAVEN_HOME) = 路径名称,然后使用export PATH=$PATH:$+自定义名字(MAVEN_HOME)。
注意:先定义路径(MAVEN_HOME),后用path引入(PATH),是从上到下的顺序,要不然就读不出。
另外一点就是在bash_profile图中我最后添加了$PATH:这里通过它引用了一些系统基础的命令,切记一定要加上否则连系统基础命令都会报command not found, 比如vim

上一篇下一篇

猜你喜欢

热点阅读