我根据这里给出的说明在ubuntu上安装了nodejs

当我在终端中写入node——version时,我看到: -bash: /usr/sbin/node:没有这样的文件或目录

不过,我可以在/usr/sbin/目录中看到node。

编写npm——版本显示为1.3.5 编写nodejs——version显示v0.10.15

此外,我可以在/usr/bin/目录中看到node。

那么,我如何让节点工作呢?

此外,如果我使用zsh而不是bash,那么节点命令就可以工作。


当前回答

只需使用NVM(节点版本管理器)- https://github.com/creationix/nvm

它已经成为管理Node.js的标准。

当你需要一个新版本时:

nvm install NEW_VER
nvm use XXX

如果出了问题,你可以随时回去

nvm use OLD_VER

其他回答

https://nodejs.org/en/download/

Download .pkg file on your mac and install it. it directly works.

➜  ~ which node
/usr/local/bin/node
➜  ~ node --version
v10.11.0
➜  ~ which npm
/usr/local/bin/npm
➜  ~ npm --version
6.4.1

您需要手动创建一个符号链接/usr/bin/node。bash兼容shell的快捷方式:

sudo ln -s `which nodejs` /usr/bin/node

或者如果你使用非标准shell,只需硬编码你找到的nodejs路径:

sudo ln -s /usr/bin/nodejs /usr/bin/node

后编辑

我在你发布的链接中找到了这个解释

与节点包(业余分组无线电节点程序)命名冲突,nodejs二进制文件已从node重命名为nodejs。你需要将/usr/bin/node链接到/usr/bin/nodejs,或者你可以卸载业余分组无线节点程序来避免这种冲突。

稍后稍后编辑

我已经有一段时间没有回答这个问题了。虽然我在这里发布的解决方案对我有用过几次,但用户在评论中报告了更多的解决方案:

从@user229115

—install /usr/bin/node node /usr/bin/nodejs

来自 AskUbuntu (用户左)

sudo apt-get --purge remove node
sudo apt-get --purge remove nodejs
sudo apt-get install nodejs

我想是这样的:

sudo update-alternatives --install /usr/bin/node node /usr/bin/nodejs 10

使用Debian替代方案。

节点版本管理器(nvm)

如果你想安装多个nodejs版本,并在它们之间轻松切换,我建议使用节点版本管理器。它还解决了命名问题(node vs nodejs)

这很简单:

安装一个nodejs版本:

$ nvm install 4.4

现在你有了nodejs 4.4,除了已经安装的版本,你可以使用node命令到达新安装的版本:

$ node -v    // The new version added by nvm.
v4.4.5
$ nodejs -v  // The OS version is untouched and still available.
v0.10.25

你可以安装更多的nodejs版本,并在它们之间轻松切换:

$ nvm install 6.2
$ nvm use 6.2
Now using node v6.2.1 (npm v3.9.3)
$ node -v
v6.2.1
$ nvm use 4.4
Now using node v4.4.5 (npm v2.15.5)

只需使用NVM(节点版本管理器)- https://github.com/creationix/nvm

它已经成为管理Node.js的标准。

当你需要一个新版本时:

nvm install NEW_VER
nvm use XXX

如果出了问题,你可以随时回去

nvm use OLD_VER