zoukankan      html  css  js  c++  java
  • Mac 中环境变量的配置

    1. 基本了解

    1.1. 查看当前path

    在讲解Mac环境变量配置之前,大家可以打开dos框,输入
    echo $PATH 查看当前的path。

    本机结果:

    /usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/apple/Library/Android/sd/tools:/Users/apple/Library/Android/sd/platform-tools:/Users/apple/Documents/mongodb/mongodb-3.6.4/bin
    

    可以看出,我的目录下有/usr/local/bin/usr/bin...都被作为环境变量进行加载了。

    1.2. 环境变量文件的优先级

    其配置文件的优先级如下所示:

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

    1.3 Mac配置环境变量的地方

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

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

    3. ~/.bash_profile (一般在这个文件中添加用户级环境变量)
      每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!

    2. 常见操作命令

    2.1 操作系统判断

    首先要知道你使用的Mac OS X是什么样的Shell,使用命令 echo $SHELL

    1. 如果输出的是:csh或者是tcsh,那么你用的就是C Shell。
    2. 如果输出的是:bashshzsh,那么你的用的可能就是Bourne Shell的一个变种。

    Mac OS X 10.2之前默认的是C
    Shell。 Mac OS X 10.3之后默认的是Bourne Shell。

    如果是Bourne Shell。
    那么你可以把你要添加的环境变量添加到你主目录下面的.profile或者.bash_profile,如果存在没有关系添加进去即可,如果没有生成一个。

    2.2 修改host文件

    sudo vi /etc/hosts
    

    2.3 linux下查看和添加PATH环境变量

    PATH的格式为:

    PATH=$PATH::::——:
    

    中间用冒号隔开。

    2.4 添加PATH环境变量:

    [root@localhost u-boot-sh4]#export PATH=/opt/STM/STLinux-2.3/devkit/sh4/bin:$PATH
    

    2.5 查看PATH环境变量:

    [root@localhost u-boot-sh4]#echo $PATH
    /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
    

    2.6 操作示例

    通过编辑 启动文件 来改PATH。

    # vim /etc/profile
    

    在文档最后,添加:

    export PATH="/opt/STM/STLinux-2.3/devkit/sh4/bin:$PATH"
    

    保存,退出。

    想立即生效请运行:

    #source /etc/profile
    

    不报错则成功。

    如果想立刻生效,则可执行下面的语句:”$ source .bash_profile(这是文件名”。环境变量更改后,在用户下次登陆时生效。

    3. 软连接

    另外有很多小伙伴可能发现了,在mac上不设置环境变量有的时候也可以直接就访问到了某些文件。这个是为什么呢?答案是用了软连接。

    3.1 查看加载文件

    可以使用cat命令查看paths文件

    localhost:/ Sean$ cat etc/paths
    /usr/local/bin
    /usr/bin
    /bin
    /usr/sbin
    /sbin
    

    答案就是mac会自动加载paths目录,自动加载这些文件夹下的文件,所以使用软连接,在这些文件夹下建立软连接,可能达到相同的效果。

    3.2 软连接查看

    ls -li
    
    406876 lrwxr-xr-x   1 root   wheel        73  7  9  2016 jar -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jar
    406877 lrwxr-xr-x   1 root   wheel        79  7  9  2016 jarsigner -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jarsigner
    406878 lrwxr-xr-x   1 root   wheel        74  7  9  2016 java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
    406879 lrwxr-xr-x   1 root   wheel        75  7  9  2016 javac -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac
    406880 lrwxr-xr-x   1 root   wheel        77  7  9  2016 javadoc -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javadoc
    406881 lrwxr-xr-x   1 root   wheel        75  7  9  2016 javah -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javah
    406882 lrwxr-xr-x   1 root   wheel        75  7  9  2016 javap -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javap
    406883 lrwxr-xr-x   1 root   wheel        76  7  9  2016 javaws -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javaws
    406884 lrwxr-xr-x   1 root   wheel        74  7  9  2016 jcmd -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jcmd
    406885 lrwxr-xr-x   1 root   wheel        78  7  9  2016 jconsole -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jconsole
    406886 lrwxr-xr-x   1 root   wheel        73  7  9  2016 jdb -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jdb
    406887 lrwxr-xr-x   1 root   wheel        75  7  9  2016 jdeps -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jdeps
    406888 lrwxr-xr-x   1 root   wheel        74  7  9  2016 jhat -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jhat
    406889 lrwxr-xr-x   1 root   wheel        75  7  9  2016 jinfo -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jinfo
    406890 lrwxr-xr-x   1 root   wheel        73  7  9  2016 jjs -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jjs
    406891 lrwxr-xr-x   1 root   wheel        74  7  9  2016 jmap -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jmap
    406892 lrwxr-xr-x   1 root   wheel        73  7  9  2016 jmc -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/jmc
    

    3.3 软连接建立和测试

    ln -s /data/kafka  /kafka
    

    ls -li
    11373698 lrwxr-xr-x 1 root wheel 11 1 19 18:09 kafka -> /data/kafka

  • 相关阅读:
    chapter2——习题
    chapter2 算法——程序的灵魂
    物理数据库设计 读书笔记
    从visio数据库脚本生成添加 MS_Description 的sql脚本
    SSIS包中CASE与NVARCHAR的恩怨
    又到年末
    delicious备份文件转入firefox书签,delicious2firefox 原创、开源
    软件架构设计 温昱著 读书笔记
    重构 读书笔记
    再遇SSIS包与MSSQL问题
  • 原文地址:https://www.cnblogs.com/qiqi715/p/9189333.html
Copyright © 2011-2022 走看看