Mac配置环境变量
前言
以往的开发环境都是Win10,如今切换Mac之后,一些环境就不是一些界面能解决的了,这里简单做一个记录。
1. 关于mac的配置文件,这里引用我参考的一篇博客
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打开的时候载入的。
一般配置到全局变量的文件都属于应用程序(其他的貌似没有必要配置)。我个人更愿意把变量写到bashrc里,不过如果配置到了bashrc里,再要用ide的terminal去运行它,理论上是跑不起来的,还是按照大多数人的走法去配置到bash_profile里的好。
简单说两句
虽然第一次玩mac,不过Linux可是玩过不少,有两个规范是我所明白的。
- 在所有路径的引用里我们习惯从根目录开始引用起来,当前位置是活的,但是根目录开始一定是我们通用的。
- 如果文件不存在,大可以直接再创建一个,这些文件都是被程序指定好的名字,有了就用,没有就用默认的。
嗯,这里我也是用maven做演示(为什么要用「也」)
在做这一步的时候又遇到了一个关于Operation not permitted
的问题。事情是在我装maven的时候,我考虑一些规范问题,决定把下载下来的maven包拷贝到/usr
目录下,在这一步报了错,问题是因为有一个超级权限锁定了这个文件夹。我看网上有两种方式能够解决这个问题,一种是关闭超级权限,开启访问;一种是避开系统管辖区域,另谋他路,想要折腾第一种方法的,参考一下这篇文章 -> Mac下使用sudo移动文件提示Operation not permitted
即便是选择了另一个文件夹去存放,也不能太随便,我是选择了~/Application/
作为根据地。访达侧边栏默认是找不到这里的,需要到偏好设置里配置(快捷键command + ,
),如下图最下面房子标志的选项。
配置.bash_profile
vim ~/.bash_profile
这里,按i
进入编辑模式
export MAVEN_HOME=/Users/eve/Applications/maven3.6.3
export PATH=$PATH:$MAVEN_HOME/bin
然后按esc
推出编辑模式,输入:wq
保存并退出。
期间我尝试了一次猎奇的写法:
# 不要尝试这么做。。一个错误的示范而已
export PATH=
$PATH:
$MAVEN_HOME/bin:
结果导致$PATH
里所有的路径都损坏了。。好在source等一些基础语法是bash内建的(如果不是内建的需要直接用全路径打开程序进一步使用),然后做进一步的处理。
我保存的配置文件
重新载入配置文件(可以用tab进行补全)
source ~/.bash_profile
查看:
echo $PATH
输出结果(这个时候应该是能够找到你配置的东西了,如果没有,检查一下步骤是不是有问题,然后适当百度或者询问....)
测试使用(如果显示版本号说明配置成功)
mvn --version
注意事项
- 注意创建文件的时候文件名不要拼错,如果配置过可以补全,没有配置过是要自己敲的,容易造成单词拼错。
- .bash_profile内容规范苛刻,注意标点符号是否拼写错误、格式是否规整。
- 如果想要在zsh中使用命令,是需要把路径指向bin文件夹中的。
- 现今很多开发工具都是可以一键安装的,可以的话还是用安装版本的,它们不容易出错。
总结
- 配置环境变量通常修改
~/.bash_profile
文件。 - 对于很多配置不要把它们想象的太高端,很多概念其实都只是一层糖衣,把我们理解的东西封装成了我所不理解的东西。
参考文献: