无管理员权限时如何修改Windows系统NodeJS可执行文件默认路径
问题原因
你之前的操作是将自定义Node路径追加到了Path环境变量末尾,Windows查找可执行文件时会按Path的路径顺序从前往后匹配,管理员安装的旧版Node路径本身排在系统Path靠前位置,所以会优先找到旧版。
解决方案
临时生效(仅对当前打开的PowerShell窗口有效)
直接将自定义Node路径添加到Path最前方,注意路径前后不要留多余空格,执行命令:
$env:Path = "C:\Users\JO52900\nodeJS\node-v14.18.0-win-x64;" + $env:Path
执行完成后直接运行node -v即可验证版本是否切换成功。
永久生效(对当前用户所有PowerShell窗口生效,无需管理员权限)
- 第一步:修改当前用户的
Path环境变量,将新版Node路径置顶
[Environment]::SetEnvironmentVariable("Path", "C:\Users\JO52900\nodeJS\node-v14.18.0-win-x64;" + [Environment]::GetEnvironmentVariable("Path", "User"), "User")
- 第二步:修改NPM全局安装与缓存路径,避免后续全局装包时无权限写入系统目录
npm config set prefix "C:\Users\JO52900\nodeJS\node-global" npm config set cache "C:\Users\JO52900\nodeJS\node-cache"
- 第三步:将NPM全局路径也加入用户
Path,保证全局安装的工具可直接调用
[Environment]::SetEnvironmentVariable("Path", "C:\Users\JO52900\nodeJS\node-global;" + [Environment]::GetEnvironmentVariable("Path", "User"), "User")
- 第四步:关闭所有已打开的PowerShell窗口,重新打开后执行
node -v、Get-Command node即可验证版本已切换为新版。
异常排查
如果重启后仍未生效,执行echo $env:Path检查输出,确认你的新版Node路径是否排在Path列表最前方,检查路径拼写是否正确、是否存在多余空格。
内容的提问来源于stack exchange,提问作者João Pimentel Ferreira
相关产品推荐
相关产品推荐

