一.首先需要了解

1>mac 一般使用bash作为默认shell
2>Mac系统的环境变量,加载顺序为:
  1、系统级别的
    /etc/profile
    /etc/bashrc
    /etc/paths
  2、用户级别的
    ~/.bash_profile (mac用的)
    ~/.bash_login
    ~/.profile
    ~/.bashrc (这个linux用的)
加载规则:
  <1>/etc/profile,/etc/bashrc和/etc/paths是系统级别的,系统启动就会加载
  <2>~/.bash_profile ,~/.bash_login ,~/.profile 是当前用户级的环境变量。按照从前往后的顺序读取
    如果~/.bash_profile文件存在,则后面的两个文件就会被忽略不读了,
    如果~/.bash_profile文件不存在,才会依次读取后面的两个文件
  <3>~/.bashrc没有上述规则,它是bash shell打开的时候载入的。
 
3>sudo vim ~/.bash_profile,如果没特殊说明,设置PATH的语法都为:
  #中间用冒号隔开
  export PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>
  一般环境变量更改后,重启后生效。如果想立刻生效,则可执行下面的语句:$ source 相应的文件

实例分析

mac自带git和php,我自己用brew安装了git和php70
但是在没有配置环境变量的情况下 git版本是mac的, php版本是brew的
 
具体分析如下
首先明确,根据由先到后的原则,先找到就不继续了
 
1>cat /etc/paths里面的情况
 
 
2>我进入到 /usr/local/bin 文件夹下分别输入命令ls php* 和ls git*,然后查看版本
 
3>我们进入/usr/bin文件夹下分别输入命令ls php* 和ls git*,然后查看版本
 
 
4>我们继续来查找下brew安装的git命令在哪里 which git
 
总结:先在/usr/local/bin中寻找,再在/usr/bin中寻找,由此可知,为什么我的php是用brew安装的 而git是原生的
 
如果我们想要正确的选择版本,那么就在~/.bash_profile中加入以下的话,版本就对了(注意$PATH放在后面,会将你写的路径放在最终路径的最前面)
export PATH=/usr/local/Cellar/git/2.10.2/bin:$PATH
export PATH="$(brew --prefix homebrew/php/php70)/bin:$PATH"
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"
 
输入$PATH
 
 
 

mac攻略(七) -- 环境变量PATH分析的更多相关文章

  1. mac攻略(4) -- 使用brew配置php7开发环境(mac+php+apache+mysql+redis)

    [http://www.cnblogs.com/redirect/p/6131751.html] 网上有很多文章都是错误的,因为是copy别人的,作者没有自己亲测,不仅不能给新手提供帮助,还会产生严重 ...

  2. 转载:(Mac)在bash和zsh配置环境变量path的几种方法

    参考文献 老习惯,列出本文参考或引用或转载的文档和博客,致以崇高的敬意,感兴趣的可以去看看 1.http://postgresapp.com/ 2.http://postgresapp.com/doc ...

  3. MAC OX 配置JDK环境变量

    大家在windows里面配置JDK环境变量很容易,但是如果要在mac里面配置JDK环境变量和windows里面有所不同,具体如下: 第一: mac OS里面自带jdk,不过是1.6的版本,现在很多人使 ...

  4. Mac下添加java环境变量

    2015年4月22号更新: 发现一个坑:最近发现有同事按照本文方式配置jdk环境变量一直不成功,后来发现他是使用了“Oh-My-Zsh”,配置文件的路径不是/etc/profile或~/.bash_p ...

  5. Mac下配置Maven环境变量

    Mac下配置Maven环境变量 1.先到Apache官网下载maven压缩包.下载地址:http://maven.apache.org/download.cgi 2.Maven是用Java开发的,所以 ...

  6. 配置JDK时环境变量path和JAVA_HOME的作用

    1.PATH环境变量.作用是指定命令搜索路径,在i命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.需要把jdk安装目录下的bin目录增 ...

  7. Linux系统下修改环境变量PATH路径的三种方法

    这里介绍Linux的知识,比如把/etc/apache/bin目录添加到PATH中有三种方法,看完之后你将学会Linux系统下如何修改环境变量PATH路径,需要的朋友可以参考下 电脑中必不可少的就是操 ...

  8. Linux 环境变量 $PATH

    我们知道查阅文件属性的指令 ls 完整文件名为:/bin/ls(这是绝对路径),那为什么可以在任何地方执行/bin/ls 这个指令呢?  为什么在任何目录下输入 ls 就一定可以显示出一些讯息而不会说 ...

  9. win7 64位系统装oracle11 提示环境变量path 值超过1023字符

    win7 64位系统装oracle10 提示环境变量path 值超过1023字符 1.提示环境变量path 值超过1023字符. 方案: 1.oracle安装文件,右键属性--设置兼容性--兼容XP ...

随机推荐

  1. Linux 基础命令-CURL 表单上传文件

    CURL -F, --form <name=content> (HTTP) This lets curl emulate a filled-in form in which a user ...

  2. flot - jQuery 图表插件(jquery.flot)使用

    Flot是纯Javascript实现的基于jQuery的图表插件,主要支持线状图和柱状图的绘制(通过插件也可以支持饼状图). 特别注意Flot使用的是UTC时间,最好修改flot.js去掉所有的UTC ...

  3. extjs 4.2 高度自适应

    问题描述: gridPanel放在tabpanel页中,而且这个tabpanel页是通过add方法添加的,页面整体布局是:首先一个viewPort布局,left区域是一个treePanel,通过点击t ...

  4. TestNG测试报告美化buid.xml配置

    <?xml version="1.0" encoding="UTF-8"?> <project name="myproject&qu ...

  5. 日志管理-Log4net

    引言 log4net库是Apache log4j框架在Micorsoft.NET平台的实现,是一个帮组程序员将日志信息输出到各种目标(控制台.文件.数据库等)的工具.(百度百科) 实际项目中使用log ...

  6. oracle客户端安装配置 tnsnames.ora文件

    Oracle客户端tnsnames.ora连接配置 Oracle90的在C:\Oracle\ora90\network\ADMIN下面 Oracel10g的在D:\oracle\product\10. ...

  7. Javascript的GET、POST请求

    POST.GET传输数据大小限制 HTTP协议规范没有对URL长度进行限制,也没有限制消息主体的大小,所以从理论上讲,GET.POST是没有大小限制的.那又为什么在使用过程中会有大小限制呢?? GET ...

  8. 关于JS嵌套点击事件的问题。

    $().click() 是点击命令$().click(function(){代码}) 是绑定click事件,并不会直接运行.所以在嵌套的时候就有可能出现重复绑定的问题.下面是使用jsonp跨站访问代码 ...

  9. 打开QQ会话

    Android:String url="mqqwpa://im/chat?chat_type=wpa&uin=123456";startActivity(new Inten ...

  10. FORM中需要反复选择LOV

    注意:1.字段长度问题 2.提示显示样式:第一条记录 3.那些不现实的返回项,或者是只读的返回项可以  将从列表中验证 改为 否    比如一个LOV 返回2个值 但是其实只用选择前一个就可以带出后一 ...