mac常用操作-配置环境变量

经过测试 环境变量 配置时, 填写应用路径时 加双引号和 不加 双引号 都没有问题。
一、打开terminal,输入  echo $PATH  ,按回车执行命令查看当前变量值,这里我们将修改PATH变量来测试。

toydeMacBook-Pro:~ toy$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/toy/Library/maven/apache-maven-3.5.3/bin:/Library/Tomcat/my_script_diy:/Library/Tomcat/home/bin:/usr/local/mysql/bin:/Users/toy/Library/Android/sdk/platform-tools
toydeMacBook-Pro:~ toy$

二、先科普一下

mac 一般使用bash作为默认shell

Mac系统的环境变量,加载顺序为:
/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc
当然/etc/profile和/etc/paths是系统级别的,系统启动就会加载,后面几个是当前用户级的环境变量。后面3个按照从前往后的顺序读取,如果~/.bash_profile文件存在,则后面的几个文件就会被忽略不读了,如果~/.bash_profile文件不存在,才会以此类推读取后面的文件。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。

如果没特殊说明,设置PATH的语法都为:
——————————————————-

# 中间用冒号隔开
 export PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>

三、(一)全局设置
下面的几个文件设置是全局的,修改时需要root权限

1)/etc/paths (全局建议修改这个文件 )
编辑 paths,将环境变量添加到 paths文件中 ,一行一个路径
Hint:输入环境变量时,不用一个一个地输入,只要拖动文件夹到 Terminal 里就可以了。

2)/etc/profile (建议不修改这个文件 )
全局(公有)配置,不管是哪个用户,登录时都会读取该文件。

3)/etc/bashrc (一般在这个文件中添加系统级环境变量)
全局(公有)配置,bash shell执行时,不管是何种方式,都会读取此文件。

4)
1.创建一个文件:
sudo touch /etc/paths.d/mysql
2.用 vim 打开这个文件(如果是以 open -t 的方式打开,则不允许编辑):
sudo vim /etc/paths.d/mysql
3.编辑该文件,键入路径并保存(关闭该 Terminal 窗口并重新打开一个,就能使用 mysql 命令了)
/usr/local/mysql/bin
据说,这样可以自己生成新的文件,不用把变量全都放到 paths 一个文件里,方便管理。

(二)单个用户设置

1)~/.bash_profile (任意一个文件中添加用户级环境变量)
(注:Linux 里面是 .bashrc 而 Mac 是 .bash_profile)
若bash shell是以login方式执行时,才会读取此文件。该文件仅仅执行一次!默认情况下,他设置一些环境变量
设置命令别名alias ll=’ls -la’
设置环境变量:

1

export PATH=/opt/local/bin:/opt/local/sbin:$PATH

2)~/.bashrc 同上

四、如果想立刻生效,则可执行下面的语句:
$ source 相应的文件
一般环境变量更改后,重启后生效。

如果你重启后生效了那就不用往下看了。
按照如上修改了~/.bash_profile文件发现无效,并且提示 zsh: command not found: homestead 那么肯定是安装了zsh的缘故,因为安装zsh,~/.bash_profile就不会被执行,解决办法如下:

1.打开vim ~/.zshrc 将你要配置到环境变量配置到该文件中即可

2.打开vim ~/.zshrc 添加source ~/.bash_profile ,这样~/.bash_profile配置的环境变量同样有效

zsh环境变量失效问题
新版的zsh在登录的时候默认只会加载~/.zshrc的配置文件,以前配置的环境变量会无效,尝试网上的各种方法均无效
发现配置文件有这样一条说明

If you come from bash you might have to change your $PATH.

于是简单粗暴的解决方案:
编辑~/.zshrc文件
在开头添加一下配置

export PATH=$HOME/bin:/usr/local/bin:$PATH
source $HOME/.bashrc
source $HOME/.bash_profile

参考:https://www.jianshu.com/p/8ef18883c958

五、以maven 作为环境变量 来举例 配置

  1. 打开terminel输入以下命令:

    vim ~/.bash_profile 打开.bash_profile文件,在次文件中添加设置环境变量的命令
    export M2_HOME=/Users/xxx/Documents/maven/apache-maven-3.5.0
    export PATH=$PATH:$M2_HOME/bin
    添加之后保存并推出,执行以下命令使配置生效:
    source ~/.bash_profile

  2. 查看配置是否生效

    1、输入:mvn -v命令,输入如下:

    Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-04T03:39:06+08:00)
    Maven home: /Users/xxx/Documents/maven/apache-maven-3.5.0
    Java version: 1.8.0_121, vendor: Oracle Corporation
    Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre
    Default locale: zh_CN, platform encoding: UTF-8
    OS name: "mac os x", version: "10.12.6", arch: "x86_64", family: "mac"

    则配置成功。

参考自:https://blog.csdn.net/hlllmr1314/article/details/52228672