Mac卸载Node后执行node -v/npm -v仍显示版本号问题
Mac 卸载Node.js后仍能查询到版本号问题排查
核心定位方法
不要手动在根目录翻找文件,先在终端执行以下命令,直接定位当前生效的node、npm可执行文件的实际路径:
which node which npm
命令返回的路径就是终端实际调用的程序位置。手动检索根目录找不到文件,通常是因为Finder默认不索引系统隐藏目录、包管理器安装目录,不会显示/usr、/opt、用户目录下以.开头的隐藏文件夹内的内容。
常见残留场景
根据命令返回的路径对应不同的安装来源,清理方式如下:
- 如果路径以
/usr/local/开头:属于官网pkg安装包的默认安装路径,残留文件通常分布在以下位置,直接删除即可:/usr/local/bin/node/usr/local/bin/npm/usr/local/lib/node_modules//usr/local/include/node/- 用户目录下的缓存文件夹
~/.npm/、~/.node-gyp/
- 如果路径以
/opt/homebrew/(M系列芯片Mac)或/usr/local/(Intel芯片Mac)下的homebrew目录开头:属于Homebrew安装的Node残留,执行brew uninstall --force node即可彻底清除所有Homebrew管理的Node版本。 - 如果路径包含
.nvm、.n、.fnm等字段:属于nvm、n、fnm等Node版本管理器安装的版本,你之前删除的只是系统级别的Node,版本管理器中下载的Node版本并未删除,同时shell配置文件中还保留了版本管理器的PATH优先级配置,终端会优先调用版本管理器内的Node程序。这种情况可以直接通过版本管理器的卸载命令删除对应版本,同时清理~/.zshrc、~/.zprofile、~/.bashrc等shell配置文件中对应版本管理器的初始化配置,执行source对应配置文件让改动生效。
验证清理结果
关闭当前终端窗口重新打开,再次执行node -v、npm -v,如果终端返回command not found,说明Node.js已经被彻底卸载。
内容的提问来源于stack exchange,提问作者Genius
相关产品推荐
相关产品推荐

