每次需要重载配置文件的问题解决
先说几个概念,做前端开发的伙伴肯定都知道,但是做后端的,虽然偶然能用到,但是基本上都是按照网上的教程,并不清楚nvm
、npm
、nodejs
三者的区别
nvm
:是nodejs
的版本管理工具
也就是说一个nvm
可以管理很多node
版本和npm
版本nodejs
:项目开发时所需要的代码库npm
:nodejs
包管理工具
在安装nodejs
的时候,npm
也会跟着一起安装,npm
用来管理nodejs
中的第三方插件
总结
nvm
管理nodejs
和npm
的版本
npm
可以管理nodejs
的第三方插件
问题引入
为什么会突然想到写这个问题,是因为在使用Macbook写博客的时候,需要用到hexo
,但安装这个的前提就是需要安装nodejs,但是安装成功后,使用命令行也没有问题,但是在下一次写的时候,发现执行任何命令都会变成:
1 | zsh: command not found: hexo |
1 | zsh: command not found: nvm |
1 | zsh: command not found: npm |
命令都不认识了,然后重新执行 source ~/.bash_profile
之后,就可以了,但凡是再次打开一个tab,或者关闭该终端,重新打开,命令就有失效了,前几次,每次都是执行 source ~/.bash_profile
,因为时间太紧了,终于有时间了就查一下解决下这个问题:
发现问题
查找资料后发现:
新的mac系统默认终端是zsh不再是bash,默认启动的文件是.zshrc不是.bash_profile。所以这样配置不会一直生效。
一直习惯行的配置在bash_profile
中,一只没注意这个问题。
解决问题
创建.zshrc
配置文件
1 | touch ~/.zshrc |
然后将.bash_profile
中的配置全部复制到 .zshrc
中
然后执行
1 | source ~/.zshrc |
问题得到解决
补充
-
环境变量文件的优先级
1
/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc
- /etc/profile (建议不修改这个文件 ) 全局(公有)配置,不管是哪个用户,登录时都会读取该文件。
- /etc/bashrc (一般在这个文件中添加系统级环境变量) 全局(公有)配置,bash shell执行时,不管是何种方式,都会读取此文件。
- ~/.bash_profile (一般在这个文件中添加用户级环境变量) 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!
- ~/.bashrc (一般在这个文件中添加用户级环境变量) bash shell执行时,不管是何种方式,都会读取此文件。
如果你的终端不是bash,而是zsh,配置文件就是
.zshrc
,终端打开的时候就会执行这个文件
macOS Catalina下安装nvm、node
前言
我们通常需要使用npm
安装一些模块,特别是全局包,由于Mac系统的安全性限制,经常出现安装提示没有权限。我们可以通过修改权限的方式来解决这个问题,但是过于麻烦,官方推荐使用nvm
管理工具解决这个问题
安装
首先需要说明的是:最好不要使用Homebrew
来安装nvm
,官方是这样说明的:
-
打开终端,进入用户的home目录
1
cd ~
-
新建一个配置文件(如果没有):
1
touch ~/.zshrc
这样,在下一步下载安装的时候,就会将环境变量自动写入该文件中
-
通过官方的说明在终端中运行下面命令中的一种进行安装:
1 | curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.2/install.sh | bash |
1 | curl -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.2/install.sh | bash |
安装成功后,如果.zshrc
文件中没有写入环境变量信息,那么执行nvm --version
就会提示zsh: command not found: nvm
如果没有,将下面的代码复制到.zshrc
中
1 | export NVM_DIR="$HOME/.nvm" |
-
执行
source ~/.zshrc
即可,访问nvm --version
,查看版本,nvm
安装成功 -
安装
nodejs
1
nvm install {version}
具体的版本号在官方上可以查到
-
安装完之后,可以使用
nvm list
查看nodejs的所有版本,如果版本较多的时候,可以通过命令nvm use v13.6.0
切换版本
补充
node
被安装在哪里?
在终端,通过which node
来查询我们的node安装在哪里了,这里的地址是当前使用的node版本快捷方式的地址
如果想查询说有node版本的安装文件夹,在访达(finder)中,使用快捷键Command+shift+G
,然后输入/Users/{你的用户名}/.nvm/versions/
就可以看到
Mac默认是不显示隐藏的文件夹的,所以在访达中是不能直接看到的,在mac下显示隐藏文件的快捷键是
Command+shift+.
,隐藏也是这个快捷键
如果您喜欢此博客或发现它对您有用,则欢迎对此发表评论。 也欢迎您共享此博客,以便更多人可以参与。 如果博客中使用的图像侵犯了您的版权,请与作者联系以将其删除。 谢谢 !