理解path环境变量


简单理解, path环境变量就是告诉系统除了在当前路径外, 还可以到指定的path路径下找到相关的程序信息;
比如安装jdk后, 一般需要手动设置jdk的home目录以及系统path变量, 这样用户就可以在任意目录执行java命令;

判断自己的shell版本


要设置环境变量, 首先需要弄清楚自己使用的shell版本;

echo $SHELL

例如, 本人用的zsh, 输入以上命令后, 结果显示如下:

mac 命令行如何查看环境变量JAVA_HOME mac环境变量在哪里_android

设置MAC环境变量(基于zsh)


下面基于本人使用zsh 来介绍下环境变量的设置.

全局环境变量设置

  1. /etc/zshrc: 一般在该文件添加系统级环境变量, 如java等等就可以直接配置在这, 如下图:
  2. /etc/paths.d: 推荐用这个路径维护全局环境变量, 可以在该路径下新建配置文件输入指定的path路径即可, 这样比较清晰, 一个程序使用一个文件配置, 可维护性高, 但要注意是直接写 指定程序的path路径 ,而不是像/etc/zshrc那样添加path变量配置, 详见下面2张图, 理解下

    jmeter配置:

用户环境变量

  1. ~/.zshrc 如果只是设置当前用户的环境变量, 直接编辑~/.zshrc即可, 然后执行source命令使其生效

一般掌握以上的path环境变量配置基本就没问题了.

碰到的坑


  1. 安装android sdk后, 设置android sdk环境变量, 路径正确, 权限也正确, 但是source 的时候一直报permission denied: /usr/local/share/android-sdk/tools, 始终不理解.
  • 最后发现是因为设置多个path时分隔符用的是;, 实际正确的应该是:, 导致一直报权限不足的错误;
  1. 设置path时, 建议先将$PATH设置第一个, 再添加你想要的其他配置, 这样就算其他配置错误, 也不会导致系统的$path失效, 从而导致无法正常使用命令, 如下图;