环境变量介绍
环境变量和全局的变量有什么用呢?
使用场景1
我们现在写好了一个java程序需要去运行,那么运行的时候需要如下步骤
- 到Java的目录下
- 执行Java命令
但是,当我们需要同时使用多个工具的时候,比如又有java、maven、git等等,而且是多台机器的时候,我们通常需要很多繁琐的cd操作。而配置环境变量 就可以使我们可以快速的运行这些脚本了。
使用场景2
如果我们又有JDK1.7,又有JDK1.8,而且需要经常的切换,那么怎么办?可以配置局部变量比如:
export JDK1.7=/usr/apps/jdk1.7
export JDK1.8=/usr/apps/jdk1.8
export PATH=$JDK1.7/bin
这样,在改变的时候,就不需要去改变全部,而改变部分语句就可以了
环境变量的作用
ok,有了上面的介绍,我们大概就可以知道环境变量到底有什么用处了,用处就是可以在操作系统的各个目录下,都能访问到需要的工具目录内的内容,和Windows的桌面的思想十分相似,而且相当于在系统的各处都具有这个桌面的快捷方式。
MacOS加载bash shell环境变量的顺序
mac 一般使用bash作为默认shell,Mac系统的环境变量,加载顺序为:
/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc
系统级别
- /etc/profile
- /etc/paths
用户级别
- ~/.bash_profile (mac用的)
- ~/.bash_login
- ~/.profile
- ~/.bashrc (这个linux用的)
/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc 当然/etc/profile和/etc/paths是系统级别的,系统启动就会加载,后面几个是当前用户级的环境变量。后面3个按照从前往后的顺序读取,如果~/.bash_profile文件存在,则后面的几个文件就会被忽略不读了,如果~/.bash_profile文件不存在,才会以此类推读取后面的文件。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。
Mac环境变量配置
查看当前有哪些环境变量
echo $PATH
设置环境变量
如果没特殊说明,设置PATH的语法都为:
#中间用冒号隔开
export PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>
全局设置 下面的几个文件设置是全局的,修改时需要root权限
- /etc/profile (建议不修改这个文件 ) 全局(公有)配置,不管是哪个用户,登录时都会读取该文件。
- /etc/paths (全局建议修改这个文件 ) 编辑 paths,将环境变量添加到 paths文件中 ,一行一个路径 Hint:输入环境变量时,不用一个一个地输入,只要拖动文件夹到 Terminal 里就可以了
- /etc/bashrc (一般在这个文件中添加系统级环境变量) 全局(公有)配置,bash shell执行时,不管是何种方式,都会读取此文件。
单个用户设置
- ~/.bash_profile (任意一个文件中添加用户级环境变量) (注:Linux 里面是 .bashrc 而 Mac 是 .bash_profile)
如果想立刻生效,则可执行下面的语句: $ source 相应的文件 一般环境变量更改后,重启命名终端后生效。
参考文献
- www.cnblogs.com/YatHo/p/680…
- blog.csdn.net/u010416101/…
- blog.csdn.net/waneto2008/…
- www.jianshu.com/p/acb1f062a…
纠错
看到网上其他文章有些
这种方法我试了好像无效,有待考证
今天的文章Mac 环境变量配置,加载顺序详解分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/15810.html