【问题标题】:How to remove all versions of node, including the one installed with brew?如何删除所有版本的节点,包括使用 brew 安装的节点?
【发布时间】:2018-02-17 11:27:52
【问题描述】:

在 MacOS 上,我的 node 有点乱,所以我试图卸载所有版本的 node。这是我尝试过的:

$ 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 的链接?

最重要的是:我怎样才能清理这个烂摊子,以便我可以全新安装节点?

【问题讨论】:

    标签: javascript node.js macos homebrew


    【解决方案1】:
    1. node --version 指的是不同的东西,因为您的 path 指向那里。使用echo $PATH 打印路径。从您的bash_profile 编辑您的路径。使用 vim ~/.bash_profile 编辑您的 bash 配置文件。

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

    3. 编辑您的 bash_profile 以更改节点的路径

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

    【讨论】:

    • 感谢您的提示。我这样做了,它有效,但现在npm 仍然坏了。 npm init 给了我Error: Cannot find module 'process-nextick-args'。我尝试使用sudo npm install -g process-nextick-args 安装该模块,但这只是给了我同样的错误。 which npm 给了我/usr/local/bin/npm,这是一个指向/usr/local/lib/node_modules/npm/bin/npm-cli.js 的符号链接,而不是使用 brew 安装的符号链接。在文件夹/usr/local/opt/node@8/bin/ 中只有一个node 二进制文件。知道在哪里可以找到与 brew 安装的节点版本 8 一起安装的正确 npm 吗?
    • @kramer65 运行whereis nodewhereis npm 来检查所有存在二进制文件的位置,然后按照我的回答将它们添加到您的环境路径中
    • 你可以试试npm install npm@latest -g
    【解决方案2】:

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

     $ export PATH="/usr/local/bin/node:${PATH}"
    

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

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-30
      • 1970-01-01
      • 1970-01-01
      • 2014-11-04
      • 2020-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多