What
一般是指在操作系统中用来指定操作系统运行环境的一些参数
Why
环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。
How
MAC下环境变量的加载顺序
- /etc/profile 系统级别
- /etc/paths 系统级别
- ~/.bash_profile
- ~/.bash_login
- ~/.profile
- ~/.bashrc
说明:
- 系统级别的,会在系统启动时加载
- 后面3个按照从前往后的顺序读取,如果~/.bash_profile文件存在,则后面的几个文件就会被忽略不读了,如果~/.bash_profile文件不存在,才会以此类推读取后面的文件。
- ~/.bashrc没有上述规则,它是bash shell打开的时候载入的
用户级添加
在.bash_profile文件中配置环境变量
- 进入
~
目录
//在终端下使用命令
cd ~
- 使用touch命令检查.bash_profile文件(如果没有则会创建)
touch .bash_profile
- 打开.bash——profile文件,并编辑,可以使用open命令,或者vim编辑器编辑
//使用open
open .bash_profile
//使用vim
vim .bash_profile
按 i 进入编辑模式
- 创建XXX_HOME变量名(非必须),如果不想创建直接进行下一步(这里以配置安卓sdk为例,JDK同样,其他想必也同样,我想使用tools下的工具和platform-tools下的工具,而这两个文件夹在android-sdk下)
export ANDROID_HOME=/Users/xxx/xxx/android-sdk
export PATH:${PATH}:${ANDROID_HOME}/tools
export PATH:${PATH}:${ANDROID_HOME}/platform-tools
- 创建完环境变量,保存文件并退出,如果是在vim下,esc -> :wq!
- 运行
source .bash_profile
,使环境变量生效
在.bashrc下配置环境变量(同.bash_profile)
全局环境变量添加
在/etc/paths中添加
编辑paths,将环境变量添加到paths文件中,一行一个路径
//以android-sdk为例
/Users/xxx/xxx/android-sdk/tools
/Users/xxx/xxx/android-sdk/platform-tools
在/etc/paths.d中添加
- 新建一个无格式文件用来保存环境变量值
sudo touch /etc/paths/paths.d/android
- 打开文件并将路径粘贴进文件
/Users/xxx/xxx/android-sdk/tools
/Users/xxx/xxx/android-sdk/platform-tools
在/etc/profile 中添加(不建议)
在/etc/bashrc(一般添加系统级环境变量)
- 全局公有配置,bash shell 执行时,不管是何种方式,都会读取此文件
- 添加方法与 .bash_profile一样