如何删除所有版本的节点,包括使用brew安装的节点?

时间:2018-02-17 11:27:52

标签: javascript node.js macos homebrew

在MacOS上我对节点有点麻烦,所以我试图卸载所有版本的节点。这就是我的尝试:

$ node --version
-bash: /usr/local/opt/node@8/bin/node: No such file or directory
$
$ which node
/usr/local/bin/node
$ ls -l /usr/local/bin/node
-rwxrwxr-x  1 hielke  admin  30994272 Oct  3 18:55 /usr/local/bin/node
$ /usr/local/bin/node --version
v6.11.4

如您所见,node --version指的是已卸载的8.x版节点。但是当我which node时,它引用/usr/local/bin/node,它是节点版本6.x的二进制文件。

从这里开始,我留下了以下问题:

  1. 为什么node --version指的是与which node不同的东西?
  2. 我可以简单地删除/usr/local/bin/node二进制文件吗?
  3. 如何删除指向/usr/local/opt/node@8/bin/node
  4. 的链接

    最重要的是:我如何清理这个混乱,以便我可以完全安装节点?

2 个答案:

答案 0 :(得分:1)

  1. node --version指的是不同的东西,因为您的path指向那里。使用echo $PATH打印路径。从bash_profile修改您的路径。使用vim ~/.bash_profile修改您的bash个人资料。

  2. 是的,你可以删除/usr/local/bin/node

  3. 修改bash_profile以更改节点的路径

  4.   

    安装所需的node的最新版本,然后进行编辑   bash_profile指向新二进制文件所在的路径。

答案 1 :(得分:0)

在bash中执行表达式或shell中的语句时,首先检查执行的命令是否有alias,如果没有别名则检查环境${PATH}变量。在您的env路径中,节点的先前位置优先于env路径变量,为修复

执行此操作
 $ export PATH="/usr/local/bin/node:${PATH}"

如果您希望将其应用,请始终根据您的平台修改~/.bash_profile~/.bashrc文件,其位置和名称可能会有所不同

在当前终端上,您必须获取您的rc文件

$ source ~/.bash_profile 
or
$ source ~/.bashrc

如果要删除以前的位置,则必须检查节点二进制文件是否仍然存在于该位置,如果它仍然存在,请使用rm命令将其删除