nvm use无法切换Node.js版本,路径含空格报错如何解决?
NVM切换Node.js版本报错解决方案
问题重现
安装了Node.js 16.17.0和14.20.1两个版本,执行切换命令时触发错误:
C:\Users\BETA TECH>nvm list * 16.17.0 (Currently using 64-bit executable) 14.20.1 C:\Users\BETA TECH>nvm use 14.20.1 exit status 1: 'C:\Users\BETA' is not recognized as an internal or external command, operable program or batch file. exit status 1: 'C:\Users\BETA' is not recognized as an internal or external command, operable program or batch file.
删除C:\Program Files目录下的Nodejs文件夹后问题仍存在。
问题原因
用户名包含空格(BETA TECH),NVM处理路径时未正确添加引号,导致路径被截断为C:\Users\BETA,系统无法识别该命令。
解决步骤
- 找到NVM的安装目录,打开
settings.txt配置文件 - 在文件末尾添加(替换为你的实际NVM根路径,确保路径用双引号包裹):
root: "C:\\Users\\BETA TECH\\AppData\\Roaming\\nvm" path: "C:\\Program Files\\nodejs" - 检查系统环境变量:
- 找到
NVM_HOME和NVM_SYMLINK变量,确保它们的路径值都用双引号括起来
- 找到
- 关闭当前命令提示符,以管理员身份重新打开,执行
nvm use 14.20.1即可完成切换
临时应急方案
如果暂时无法修改配置,可先切换到无空格的目录再执行命令:
cd C:\ nvm use 14.20.1
内容的提问来源于stack exchange,提问作者Sovann Sun
相关产品推荐
相关产品推荐

