nvm命令找不到是因为安装脚本未自动加载配置,需手动执行source ~/.zshrc(zsh)或source ~/.bashrc(bash)使环境变量生效,再验证nvm --version。

nvm 命令找不到,不是安装失败,而是环境没加载——这是 Linux 下装 nvm 最常卡住的一步。直接上手就能用,不用 sudo,也不动系统级 Node。
curl 安装后 nvm 命令还是 command not found
安装脚本(比如 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash)确实会往 ~/.bashrc 或 ~/.zshrc 末尾写初始化代码,但它不会自动生效。
- 先确认 shell 类型:
echo $SHELL—— 大部分新发行版默认是/bin/zsh,不是/bin/bash - 如果是 zsh:运行
source ~/.zshrc;如果是 bash:运行source ~/.bashrc - 验证:
nvm --version应输出类似0.40.3,否则检查配置文件末尾是否真有这两行:export NVM_DIR="$HOME/.nvm"[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
nvm install --lts 装出来的到底是不是最新 LTS
是,但得看“最新”指哪一刻。截至 2026 年 6 月,Node.js 官方最新 LTS 是 v20.18.0(代号 Iron),nvm ls-remote --lts 会实时拉取 nodejs.org 的列表,不是缓存。
使用一条命令部署ProbeChain Rydberg测试网代理节点。自动注册为Agent(NodeType=1),免gas,支持macOS/Linux/Windows。触发词:/r
-
nvm install --lts装的是当前已发布的最新 LTS,不会回退到 v18.x 这类已结束维护的老 LTS - 想装特定代号(比如
hydrogen):用nvm install --lts=hydrogen - 装完必须手动
nvm use --lts或nvm use v20.18.0,否则node -v仍可能显示旧版本或报错 - 设默认才对新开终端生效:
nvm alias default v20.18.0
nvm use 切换后 node -v 没变
根本原因是 $PATH 里别的 Node 路径抢在了前面,nvm 本来该把 ~/.nvm/versions/node/v20.18.0/bin 前置,但被覆盖了。
- 查干扰源:
which node—— 如果输出是/usr/bin/node或/usr/local/bin/node,说明系统包管理器装的 Node 还在 PATH 里 - 临时修复(仅当前终端):
export PATH="$HOME/.nvm/versions/node/v20.18.0/bin:$PATH" - 根治办法:确保
source ~/.nvm/nvm.sh这行在~/.zshrc(或对应配置)中,位于所有可能修改 PATH 的语句之后 - 验证状态:
nvm current应输出v20.18.0;nvm ls中带->的那行才是当前激活版本
卸载旧版 Node 后 npm 全局包还在吗
不在。nvm uninstall v18.19.0 会连同该版本下 npm root -g 所在目录一起删掉,不残留。
- 每个 Node 版本的全局 npm 包都独立存放在
~/.nvm/versions/node/<version>/lib/node_modules/</version> - 切换版本后,
npm list -g --depth=0显示的包只属于当前版本 - 如果某个包(比如
pnpm)在多个版本里都要用,得每个版本都npm install -g pnpm一遍 - 别指望
nvm reinstall-packages—— 它只对同一 major 版本内的小版本升级有效(如 v20.13.1 → v20.18.0),跨 major(v18 → v20)不兼容,得重装
路径污染和 shell 配置顺序,比装哪个版本更关键。很多人反复重装 nvm,其实只是没把 source 行放到配置文件最底下。










