使用nvm卸载当前正在使用的node.js版本

53

在Ubuntu 16.04上,我错误地使用了root安装nvm,然后通过nvm安装了node.js 8.8.1。我还使用了nvm alias default 8.8.1,认为它会纠正我的错误。

现在我想要:

  1. 删除默认别名
  2. 卸载node 8.8.1
  3. 卸载随node一起安装的npm 4.8.5
  4. 卸载nvm
  5. 为正确的非sudo用户重新正确安装所有内容

看起来我已经成功完成了第一部分:

# nvm unalias default
Deleted alias default - restore it with `nvm alias "default" "8.8.1"`

但 nvm 拒绝卸载 node 8.8.1,因为它是唯一安装的版本:

# nvm uninstall 8.8.1                                                                                                                             
nvm: Cannot uninstall currently-active node version, v8.8.1 (inferred from 8.8.1).

我猜我首先需要停用 node 8.8.1,但是在 nvm --help 的输出中似乎没有任何可以完成此操作的选项。

在正确重新安装一切之前,我需要采取哪些步骤来完全删除机器上的 node.js、npm 和 nvm?


5个回答

106
在终端中, 首先输入
nvm deactivate

然后输入

nvm uninstall 8.8.1

谢谢@Shar。那个nvm deactivate有用。但是为什么需要取消激活呢?它不像PostgreSQL这样的数据库服务器吗? - Amit Tiwari

15
rm -Rf ~/.nvm

在我的情况下,这是一种"核选择"。仅使用"-R"选项会询问我是否真的想要删除nvm文件夹中的每个文件。


9

您可以使用以下命令卸载Node.js。

yum remove nodejs

但是,这不会从您的Linux系统中删除nvm。要删除它,请尝试下面的命令。

nvm unload


2
nvm deactivate

可以暂时停用已经安装的Node.js版本。你可以在.zshrc等文件中注释掉路径,以便下一次会话。

#export NVM_DIR="$HOME/.nvm"
#[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
#[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

1

我尝试在Ubuntu 20v上运行这些命令,结果完全删除了Node.js

sudo apt-get remove nodejs
sudo apt-get autoremove

然后使用node --version检查版本,你会得到这条信息。
bash: /usr/bin/node: No such file or directory

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接