在 zsh 中找不到但在 bash 中找到的 npm 命令

npm command not found in zsh but found in bash

我用 nvm 安装了 npm,第一次一切顺利,现在我尝试在 Mac 终端上检查 npm 版本,它显示:

% npm --version
zsh: command not found: npm

但是使用 VSCode 终端和 bash,使用相同的命令,显示:

npm --version
6.14.12

有没有可能我安装错了npmnvm?或者这是我可以告诉 Mac 终端使用 bash 而不是 zsh 的方法吗?

我首先通过在 bashzsh 中执行 echo $PATH 解决了这个问题,结果是:

bash: /Users/myuser/.nvm/versions/node/v12.22.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

zsh: /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

两条路径都有/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

但只有 bash 有这个:/Users/myuser/.nvm/versions/node/v12.22.1/bin:

所以我需要将缺少的路径添加到 zhs 路径,因为我没有我需要做的 .zshrc 文件:

echo 'PATH="~/.nvm/versions/node/v12.22.1/bin:$PATH"' >> ~/.zshrc

之后,我在终端上执行 reset 并再次使用 echo $PATH 验证我在两个终端上的路径相同。

最终执行了以下命令:source ~/.zshrc,再次重置终端,现在 bashzhs 都已同步且可用。