macOS配置环境变量详解


macOS 环境变量配置

举例子


在macOS上我们一般都是这样配置环境变量的:

  • 打开Terminal (终端)
  • 输入: cd ~ ( 表示进入当前用户的home目录)
  • 输入: touch .bash_profile (表示创建bash_profile文件)
  • 编辑刚才创建的文件:open .bash_profile
  • 填写要配置的内容,例如配置Android_Home环境要写:

    exportANDROID_HOME=/usr/local/opt/android-sdk
    export PATH={PATH}:{ANDROID_HOME}/tools
    export PATH={PATH}:{ANDROID_HOME}/platform-tools
    
  • 执行如下命令让刚才的配置生效:source .bash_profile

这样我们就配置好了Android的环境,接下来我们讲解为啥这样配置。

讲原理


我们来解答几个问题:

1、这样配置的道理是什么?

答:只要我们在创建的bash_profile文件写上代码(配置),然后执行(source .bash_profile),系统就会加载我们的这些代码,并读取其内容。这样我们写的一些变量值就能被系统保存下来。最后在我们用到这些变量的时候就能读取出来。例如我们在Android studio中读取sdk的路径时就能用到这里的路径了。

2、为什么是创建这个文件:bash_profile

答:其实系统会去读取的文件不仅仅是这里的(bash_profile),我们还可以在其他几个文件中去配置,如:

/etc/profile 
/etc/paths 
~/.bash_profile
~/.bash_login 
~/.profile
~/.bashrc

不同的是它们的作用域不同:而bash_profile文件指的是针对不同系统用户级别的配置。一般情况下,我们写代码的时候对电脑上当前的用户进行配置就够用了。

如果你想知道其他几个文件的作用域,请继续看:

  • /etc/paths (全局 )

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

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

  • .profile 为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置。 如果你有对/etc/profile有修改的话必须得重启你的修改才会生效,此修改对每个用户都生效。

  • ./bashrc 每一个运行bash shell的用户执行此文件。当bash shell被打开时,该文件被读取。 对所有的使用bash的用户修改某个配置并在以后打开的bash都生效的话可以修改这个文件,修改这个文件不用重启,重新打开一个bash即可生效。

  • ./bash_profile 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.

3、配置语法要怎么写?

答:

export PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>

本文参考资料:

https://zhuanlan.zhihu.com/p/25976099 https://elf8848.iteye.com/blog/1582137 https://blog.csdn.net/u010416101/article/details/54618621 https://www.jianshu.com/p/acb1f062a925 https://www.jianshu.com/p/84f3baf1682c

这篇文章有一个评论

评论关闭。

关闭菜单