You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在不同PowerShell终端中同时使用多个不同版本的Node.js

按目录/终端窗口自动切换Node.js版本的解决方案

方法1:NVM配合目录自动切换(无需额外工具)

  • 在每个项目根目录创建.nvmrc文件,写入所需的Node.js版本号,比如16.18.0或lts/gallium
  • 打开你的shell配置文件(~/.bashrc、~/.zshrc等),添加以下脚本:
cd() {
  builtin cd "$@" || return
  local nvmrc_path=$(nvm_find_nvmrc)

  if [ -n "$nvmrc_path" ]; then
    local target_version=$(cat "${nvmrc_path}")
    local current_version=$(nvm version)

    if [ "$current_version" != "v$target_version" ]; then
      nvm use "$target_version"
    fi
  elif [ "$current_version" != "$(nvm version default)" ]; then
    nvm use default
  fi
}
  • 重启终端或执行source ~/.zshrc(对应你的shell类型)生效,之后进入项目目录会自动切换到指定版本,离开目录则恢复默认版本

方法2:给单个终端窗口绑定固定版本

如果需要同时开多个终端处理不同项目,直接在目标终端窗口执行:

nvm use <指定版本号>

该窗口会一直保持这个Node版本,新开的终端不受影响,适合多项目并行操作的场景

方法3:用direnv实现更灵活的环境隔离

  • 安装direnv(通过包管理器,比如brew install direnv或sudo apt install direnv)
  • 在shell配置文件中添加:
eval "$(direnv hook zsh)" # bash环境替换为bash
  • 在项目根目录创建.envrc文件,写入:
nvm use 14.21.3
  • 执行direnv allow授权该目录的环境配置,之后进入目录会自动加载指定版本,离开后自动恢复系统默认环境

内容的提问来源于stack exchange,提问作者asgallant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 21:21:59