使用nvm-windows切换Node.js版本后仍回退至旧版本的解决方法
解决Node.js版本切换(nvm)权限问题并固定使用v10.23.0
1. 彻底清理系统残留的Node.js与nvm
- 检查全局Node.js位置:执行
which node,若输出为/usr/local/bin/node这类非nvm管理路径,删除该文件:sudo rm -rf /usr/local/bin/node - 清理全局npm:执行
which npm,删除对应路径:sudo rm -rf /usr/local/bin/npm - 删除nvm目录:
rm -rf ~/.nvm - 打开shell配置文件(如
~/.bashrc、~/.zshrc),删除所有包含nvm的配置行,保存后重启终端,或执行source ~/.bashrc(对应你的shell类型)
2. 重新安装nvm(避免权限问题)
执行以下命令安装nvm:curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
安装完成后重启终端,执行nvm --version验证是否安装成功。
3. 安装并设置默认Node.js v10.23.0
- 安装目标版本(不要加sudo,nvm是用户级工具,sudo会导致权限混乱):
nvm install 10.23.0 - 设置该版本为终端默认版本:
nvm alias default 10.23.0 - 关闭并重新打开终端,执行
node -v,确认输出为v10.23.0
4. 排查权限残留问题
- 检查nvm目录权限:执行
ls -ld ~/.nvm,确保所有者为当前用户而非root。若权限异常,执行:sudo chown -R $USER:$USER ~/.nvm - 验证shell配置:打开
~/.bashrc或~/.zshrc,确认存在以下代码(没有则手动添加):
保存后执行export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"source ~/.bashrc生效
内容的提问来源于stack exchange,提问作者epin
相关产品推荐
相关产品推荐

