Mac添加环境变量的三种方法
法一:
sudo vi /etc/paths
来编辑 paths,将环境变量添加到 paths 中。
vim 是一个编辑器,另外还有几个,如:Pico,Emacs。
Hint:输入环境变量时,不用一个一个地输入,只要拖动文件夹到 Terminal 里就可以了。
法二:
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.创建并以 TextEdit 的方式打开 ~/.bash_profile 文件
touch ~/.bash_profile;
open -t ~/.bash_profile
2.新增环境变量
export PATH="$HOME/.rbenv/bin:$PATH"
3.让以上所做的配置生效
source ~/.bash_profile
4.查看是否生效(有时可能需要关闭当前 Terminal 窗口重新开启一个)
echo $PATH
需要注意的一点(冒号乃环境变量的分隔符):
$HOME/.rbenv/bin:$PATH 中的 $PATH 特指 /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
如果要添加多个环境变量的话,需按照如下的方式来书写:
export PATH="$PATH:/Applications/MacVim-snapshot-68"
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
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的语法都为:
——————————————————-
1
2
|
#中间用冒号隔开
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 相应的文件
一般环境变量更改后,重启后生效。
MAC 修改host文件
sudo vi /etc/hosts
一、设置java环境变量
1.source /etc/profile
确认java使用的版本:开一个终端,输入java -version,确认jvm的版本号是jdk1.7.0。
1.配置环境变量,mac终端,sudo vim /etc/profile
在最后添加(jdk1.7.0_45.jdk为具体版本):
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export CLASSPATH
export PATH
2.source /etc/profile
二、设置用户环境变量
1.touch ~/.bash_profile;
open -t ~/.bash_profile
2.source ~/.bash_profile
举个栗子:
export PATH=${PATH}:/Users/hanjiahu/Library/Android/sdk/tools
export PATH=${PATH}:/Users/hanjiahu/Library/Android/sdk/platform-tools
export PATH=${PATH}:/Users/hanjiahu/Library/Android/sdk/build-tools/22.0.1
export NVM_DIR="/Users/hanjiahu/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
GRADE_HOME=/Users/hanjiahu/.gradle/wrapper/dists/gradle-2.10-all/a4w5fzrkeut1ox71xslb49gst/gradle-2.10;
export GRADE_HOME
export PATH=/opt/local/bin:/opt/local/sbin:$PATH:$GRADE_HOME/bin
##JAVA_HOME=/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
JAVA_HOME7=/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
JAVA_HOME8=/Library/Java/JavaVirtualMachines/jdk1.8.0_71.jdk/Contents/Home
JAVA_7HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home
JAVA_8HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_71.jdk/Contents/Home
export JAVA_HOME
export JAVA_HOME7
export JAVA_HOME8
export JAVA_7HOME
export JAVA_8HOME
export PATH=$PATH:$JAVA_HOME:$JAVA_HOME7:$JAVA_HOME8:$JAVA_7HOME:$JAVA_8HOME
export ANDROID_SDK=/Users/hanjiahu/Library/Android/sdk
export ANDROID_HOME=/Users/hanjiahu/Library/Android/sdk
##export SDK=/Users/hanjiahu/Library/Android/sdk
export ANDROID_NDK=/Users/hanjiahu/Library/Android/android-ndk-r10e
export ANDROID_NDK=/Users/hanjiahu/Library/Android/android-ndk-r10e
export PATH=$PATH:$ANDROID_SDK:$ANDROID_NDK:$ANDROID_SDK/platform-tools/