zoukankan      html  css  js  c++  java
  • Mac下添加环境变量

    1.环境变量的作用:

    我们先来看这样的一个使用场景1,我们有一个程序Java,需要读取某个文件(/data/file.txt)。 那么我们在运行的时候是不是需要做如下的步骤:

      1. cd 到Java的目录下;
      1. 执行Java命令;

      但是,当我们需要同时使用多个工具的时候,比如又有java、maven、git等等,而且是多台机器的时候,我们通常需要很多繁琐的cd操作。而配置环境变量 就可以使我们可以快速的运行这些脚本了。

    1.1使用场景1
    如果我们又有JDK1.7,又有JDK1.8,而且需要经常的切换,那么怎么办?
    可以配置局部变量比如:

      1 export JDK1.7=/usr/apps/jdk1.7
      2 export JDK1.8=/usr/apps/jdk1.8
      3 export PATH=$JDK1.7/bin
    

    这样,在改变的时候,就不需要去不到改变,而改变部分句可以了。
    1.2环境变量的作用
    ok,有了上面的介绍,我们大概就可以知道环境变量到底有什么用处了。用处就是可以在操作系统的各个目录下,都能访问到需要的工具目录内的内容,和Windows的桌面的思想十分相似,而且相当于在系统的各处都具有这个桌面的快捷方式。

    2.Mac系统下的环境变量:
    a. /etc/profile 
    b. /etc/paths 
    c. ~/.bash_profile 
    d. ~/.bash_login 
    e. ~/.profile 
    f. ~/.bashrc 
    

    其中a和b是系统级别的,系统启动就会加载,其余是用户接别的。c,d,e按照从前往后的顺序读取,如果c文件存在,则后面的几个文件就会被忽略不读了,以此类推。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。这里建议在c中添加环境变量,以下也是以在c中添加环境变量来演示的:

    3.添加环境变量:
      1. 输入vim ./.bash_profile 确定enter,然后就打开了bash_profile文件


         
        bash_profile.jpg

    科普一下(这段可跳过)在Mac中我们的环境是添加到PATH路径下的,系统运行的时候会直接去找/usr/libexec/path_helper这个文件,里面内容就是我们通过环境变量设置的PATH,所以我们设置环境变量是通过PATH来设置的。

     
    path_helper.jpg

    可以看到它里面加载了我们设置的环境变量。

      1. 看到了上图,我已经配置过的一些环境变量,以添加maven的环境变量为例:
    export MAVEN_HOME=/usr/local/apache-maven-3.6.0
    export PATH=$PATH:$MAVEN_HOME
    

    点击i建进入编 辑状态。首先export + 自定义名字(MAVEN_HOME) = 路径名称,然后使用export PATH=$PATH:$+自定义名字(MAVEN_HOME)。(在一个PATH下添加多个环境变量后面用:号把路径拼接下来,就像我们在windows上那样,我这里就是这样做的)这样一个环境变量就添加上了,然后按esc退出编辑状态,使用:wq退出。(有时会因为权限问题提示:E45: 'readonly' option is set (add ! to override)错误,这时使用:wq!强制保存退出就ok)

    注意:先定义路径(MAVEN_HOME),后用path引入(PATH),是从上到下的顺序,要不然就读不出。
    另外一点就是在bash_profile图中我最后添加了$PATH:这里通过它引用了一些系统基础的命令,如我们刚刚使用vim,切记一定要加上否则连系统基础命令都会报command not found的(我刚刚弄的时候忘了加,整得一脸懵逼)

      1. 使用source ./.bash_profile使刚刚修改的文件生效。
      1. 这个时候我们就可以使用echo $PATH(echo+自定义名字(MAVEN_HOME)查看单独设置的某一条环境变量)就可以看到刚刚添加的路径了,我常使用--+version的方式查看刚刚添加的是否神效比如上面添加的maven(直接使用mvn version):
         
        echo $PATH.jpg
    4.补充:MAC 终端编辑完成后如何保存:

    如果是vi,则:Esc 退出编辑模式,输入以下命令:
    :wq 保存后退出vi,若为 :wq! 则为强制储存后退出(常用)
    :w 保存但不退出(常用)
    :w! 若文件属性为『只读』时,强制写入该档案
    :q 离开 vi (常用)
    :q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。
    :e! 将档案还原到最原始的状态!

     
     https://www.jianshu.com/p/463244ec27e3

  • 相关阅读:
    Js 之获取QueryString的几种方法
    Go语言 之md5加密
    跨域取文件(跨项目)
    System.IO
    System.Threading.Tasks
    JS存取Cookies值,附自己写的获取cookies的一个方法
    HttpServerUtility 和 HttpUyility
    JS格式化时间
    JS获取页面传过来的值
    Navigator 对象
  • 原文地址:https://www.cnblogs.com/liuzhixian666/p/13726056.html
Copyright © 2011-2022 走看看