Mac环境变量配置及语法解释

以ADB为例 , 其实就是在终端输入下面一句shell命令就ok:

export PATH=${PATH}:~/Library/Android/sdk/platform-tools:~/Library/Android/sdk/tools

当然还没完, 以上操作确实达到了修改环境变量的目的, 但是仅仅保证对此次会话有效, 也就是说当你重启终端后,你配置的这个adb的环境变量就失效了, 又得需要重新输入一次...

那么如何将这条shell命令"持久化", 每次启动终端都自动运行? 我们可以用shell的配置文件来实现.
配置文件里可以预置一些shell命令, 每次打开终端时自动加载配置文件, 从而实现预置代码的自动运行

1. 寻找当前shell的配置文件

echo $SHELL 查看当前shell版本, 使用的shell不同, 对应的配置文件也不一样

  • 如果是bash
vim ~/.bash_profile
//或者
vim ~/.bashrc
  • 如果是zsh
vim ~/.zshrc

PS.通过如下命令可切换shell

//切换到zsh
chsh -s `which zsh` 
//切换到bash
chsh -s `which bash`

重启终端 (如果是Linux可能需要重启系统才能生效)
其他shell可通过cat /etc/shells查看当前系统已安装的shell所有版本

2. 修改配置文件

找到了配置文件, 那么就可以将我们最初的那行shell命令放进去了
export PATH=${PATH}:~/Library/Android/sdk/platform-tools:~/Library/Android/sdk/tools

3. 重载配置文件, 使修改生效

两种方式:
3.1 粗鲁的方式: 重启终端;
3.2 优雅的方式: 重载配置文件
source ~/.bash_profile 或者 . ~/.bash_profile
此处用法具体可参考 Shell 文件包含

4. export语法解释

  • ${}为占位符,${PATH} 和 $PATH等效
  • =前后不能有空格
  • : 为分隔符(等同于windows环境变量中的 ; )
  • PATH=$PATH:xxx 可以理解为 " PATH+=xxx "(当然不能这么写)
    PATH=xxx:$PATH这种写法亦可,只是前后顺序的问题;
  • 以上命令可以拆为两行:
    把adb所在路径~/Library/Android/sdk/platform-tools:~/Library/Android/sdk/tools加入到PATH中去;
PATH=${PATH}:~/Library/Android/sdk/platform-tools:~/Library/Android/sdk/tools

使环境变量生效

export PATH
  • shell中可以通过export -p命令查看所有环境变量

你可能感兴趣的:(Mac环境变量配置及语法解释)