1.6 KiB
1.6 KiB
2026-04-10 登录 Shell 默认使用 Node 25 实施记录
变更内容
- 保持
nvm默认别名为25 - 在
~/.zprofile中补充nvm初始化,并在登录 shell 启动时自动执行nvm use default
根因分析
nvm alias default 25已经存在,但仅在交互式 shell 中可用zsh -lc启动的是登录非交互 shell,不会读取~/.zshrc- 因此这类场景下
node、npm、npx未进入 PATH,表现为npx启动失败
修改文件
~/.zprofiledoc/implementation-report-2026-04-10-login-shell-default-node25.md
验证项
- 验证登录 shell 在不手动执行
nvm use的情况下可直接识别node - 验证登录 shell 在不手动执行
nvm use的情况下可直接识别npx - 验证
nvm默认别名仍然指向25
执行命令
zsh -lc 'nvm alias default 25'zsh -lc 'echo NODE=$(node -v); echo NPM=$(npm -v); echo NPX=$(npx -v); echo NODE_PATH=$(command -v node); echo NPX_PATH=$(command -v npx); echo NVM_CURRENT=$(nvm current); echo NVM_ALIAS=$(nvm alias default | tail -n 1)'
验证结果
nvm默认别名输出为default -> 25 (-> v25.9.0 *)- 登录 shell 输出
NODE=v25.9.0 - 登录 shell 输出
NPM=11.12.1 - 登录 shell 输出
NPX=11.12.1 - 登录 shell 输出
NODE_PATH=/Users/wkc/.nvm/versions/node/v25.9.0/bin/node - 登录 shell 输出
NPX_PATH=/Users/wkc/.nvm/versions/node/v25.9.0/bin/npx - 登录 shell 输出
NVM_CURRENT=v25.9.0 - 登录 shell 输出
NVM_ALIAS=default -> 25 (-> v25.9.0 *)
结论
zsh -lc场景下已默认切换到 Node25.9.0npx在登录 shell 中已可直接使用,无需先手动执行nvm use 25