我根据这里给出的说明在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,那么节点命令就可以工作。
我根据这里给出的说明在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
其他回答
您需要手动创建一个符号链接/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 ln -s /usr/bin/nodejs /usr/bin/node 在那之后 Sudo NPM install -g phantomjs-prebuilt
很顺利
迟到的回答,但最新的信息…
如果您使用node github安装自述me中的推荐方法安装node.js,建议遵循nodesource博客文章中的说明,而不是从过期的apt-get repo安装,node.js应该使用node命令和nodejs命令运行,而不必创建新的符号链接。
文中的方法是:
# Note the new setup script name for Node.js v0.12
curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -
# Then install with:
sudo apt-get install -y nodejs
请注意,这是针对v0.12的,在不久的将来,v0.12可能会过时。
另外,如果你使用的是公司代理(就像我一样),你需要在sudo命令中添加-E选项,以保留代理所需的env vars:
curl - sl https://deb.nodesource.com/setup_0.12 | sudo - e bash - .
对绝对初学者有帮助吗
虽然你已经得到了答案,但只是想指出node命令(不带任何参数)将以REPL read-eval-print-loop模式启动node以执行原始javascript代码。
使用node命令的另一种方法是提供一个js文件作为参数。这是我们最常用的方法。
我在Ubuntu 14.04中也有同样的问题。
我已经安装了“nodejs”,它正在工作,但前提是我使用命令“nodejs”。如果我尝试使用node,什么都不会发生。
我修复了这个问题在接下来的方式:
安装nodejs-legacy Sudo apt-get install nodejs-legacy
之后,当我在命令行中键入“节点”时,我得到一个错误消息“/usr/sbin/节点:没有这样的文件或目录”
其次,我所做的是在“nodejs”上添加一个符号链接: Sudo ln -s /usr/bin/nodejs /usr/sbin/node