Javascript ubuntu 12.04上的nodejs vs node
我根据给出的说明在ubuntu上安装了nodejs 当我在终端中写入Javascript ubuntu 12.04上的nodejs vs node,javascript,node.js,ubuntu,serverside-javascript,Javascript,Node.js,Ubuntu,Serverside Javascript,我根据给出的说明在ubuntu上安装了nodejs 当我在终端中写入节点--version时,我看到这样一个: -bash:/usr/sbin/node:没有这样的文件或目录 不过,我可以在/usr/sbin/目录中看到节点 编写npm--version显示1.3.5 编写nodejs--version显示v0.10.15 另外,我可以在/usr/bin/目录中看到节点 那么,如何让节点工作 另外,如果我使用zsh而不是bash,那么node命令也可以工作。您需要手动创建一个符号链接/usr/b
节点--version
时,我看到这样一个:-bash:/usr/sbin/node:没有这样的文件或目录
不过,我可以在/usr/sbin/
目录中看到节点
编写npm--version
显示1.3.5
编写
nodejs--version
显示v0.10.15
另外,我可以在/usr/bin/
目录中看到节点
那么,如何让节点
工作
另外,如果我使用zsh而不是bash,那么
node
命令也可以工作。您需要手动创建一个符号链接/usr/bin/node
。bash兼容shell的快捷方式:
sudo ln -s `which nodejs` /usr/bin/node
或者,如果使用非标准shell,只需使用哪个节点对找到的路径进行硬编码即可:
sudo ln -s /usr/bin/nodejs /usr/bin/node
以后编辑
我在你发布的链接中找到了这个解释
节点包(业余包无线电节点程序)存在命名冲突,并且nodejs二进制文件已从node重命名为nodejs。您需要将/usr/bin/node符号链接到/usr/bin/nodejs,或者您可以卸载业余包无线电节点程序以避免冲突
以后编辑
我已经有一段时间没有回答这个问题了。虽然我在这里发布的解决方案多次对我有效,但用户在评论中报告了更多的解决方案:
来自@user229115
sudo更新备选方案——安装/usr/bin/node-node/usr/bin/nodejs 10
来自AskUbuntu(用户leftium)
我想是这样的:
sudo update-alternatives --install /usr/bin/node node /usr/bin/nodejs 10
sudo更新替代方案--安装/usr/bin/node/usr/bin/nodejs 10
使用Debian替代方案。显然,Ubuntu版本之间的解决方案有所不同。以下是我在Ubuntu 13.10上的工作:
sudo apt-get install nodejs-legacy
嗯
编辑:经验法则:
如果您安装了nodejs
但缺少/usr/bin/node
二进制文件,那么也要安装nodejs legacy
这只会创建缺少的软链接
根据我的测试,Ubuntu 17.10和更高版本在安装了nodejs
之后已经有了兼容的软链接/usr/bin/node
,因此这些版本中没有了nodejs legacy
,因为不再需要它了。我对这一切都不熟悉,但对我来说,一个简单的别名起了作用:
alias node='env NODE_NO_READLINE=1 rlwrap nodejs'
至少在bash中直接运行东西并执行.js文件 对@randunel的正确答案进行补充(目前还不能对此发表评论):
我还必须将/usr/local/bin/node符号链接到/usr/bin/nodejs
sudo ln -s /usr/bin/nodejs /usr/local/bin/node
node -v => 0.10.2
nodejs -v => 5.5.0
显然,这是在重写/usr/bin/node命令
不知道这是怎么设置的,但希望它能帮助其他人,因为这是一种痛苦,以找出为什么上面没有为我工作 我在Ubuntu 14.04中也有同样的问题
我已经安装了“nodejs”,并且它正在工作,但只有在我使用命令“nodejs”的情况下。如果我尝试使用“node”,什么都不会发生
我用下一种方法解决了这个问题:
安装nodejslegacy
sudo apt-get install nodejs-legacy
sudo-apt-get-install-nodejs-legacy
之后,当我在命令行中键入“node”时,会收到一条错误消息“/usr/sbin/node:没有这样的文件或目录”
第二,我所做的,是“nodejs”上的一个符号链接:
sudo ln-s/usr/bin/nodejs/usr/sbin/node
我已经创建了一个符号链接,但它仍然不起作用
我忘记重新启动我的终端(我的油灰连接)。在我没有符号链接的情况下,它可以正常工作:)延迟回答,但对于最新信息
如果使用中的推荐方法安装node.js,则建议遵循上的说明,而不是从过期的apt get repo安装,node.js应使用node
命令以及nodejs
命令运行,而无需创建新的符号链接
第条中的方法是:
#注意Node.js v0.12的新安装脚本名称
curl-sLhttps://deb.nodesource.com/setup_0.12 |sudo bash-
#然后使用以下工具安装:
sudo apt get安装-y nodejs
请注意,这是针对v0.12的,在不久的将来,它可能会过时
此外,如果您支持一个公司代理(如我),您将希望在sudo命令中添加-E选项,以保留代理所需的env vars:
curl-sLhttps://deb.nodesource.com/setup_0.12 |sudo-ebash-
这也发生在我身上
sudo ln -s /usr/bin/nodejs /usr/local/bin/node
node -v => 0.10.2
nodejs -v => 5.5.0
问题是我不久前从源代码安装了node。运行
which node
始终指向此本地安装。而且
echo NODE_PATH
指向本地安装
使用源安装删除目录没有帮助。它刚刚破坏了node命令。最后,取消设置NODE_PATH环境变量并清除,然后重新安装nodejs就成功了
unset NODE_PATH
sudo apt-get --purge remove nodejs
sudo apt-get install nodejs
此后,
node -v => 5.5.0
根据Node=>5.0的不同,npm安装开始对软件包起作用。这对我来说很有用:
alias node=nodejs
按照链接中的说明操作。节点版本管理器(nvm)
如果您想安装多个nodejs版本并在它们之间轻松切换,我建议使用。它还解决了命名问题(node
vsnodejs
)
很简单:
安装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)
我也有同样的问题,符号链接帮了我:
sudo ln-s/usr/bin/nodejs/usr/bin/node
之后
sudo npm安装-g phantomjs预构建
顺利进行安装nodejs的最佳方法是通过NVM(节点版本管理器)
删除以前的版本:
$ sudo apt-get purge node
然后
$curl-o-https://raw.githubusercontent.com/creationix/nvm/v0.31.7/install.sh |猛击
或
$w
$ sudo apt autoremove
$ sudo su
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.7/install.sh | bash
$ wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.31.7/install.sh | bash
$ source ~/.profile
$ nvm ls-remote
$ sudo apt-get install git
$ nvm ls-remote
$ sudo nvm ls-remote
$ nvm install version-you-require
# node --version
nvm use version-you-require
https://www.digitalocean.com/community/tutorials/how-to-install-node-js-with-nvm-node-version-manager-on-a-vps
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt install -y build-essential
sudo apt-get update
sudo apt-get --purge remove node -y
sudo apt-get --purge remove nodejs -y
sudo apt-get --purge remove legacy-node -y
sudo rm /usr/bin/node
curl -sL https://deb.nodesource.com/setup_6.x | sudo bash -
sudo apt-get install nodejs -y
node -v
sudo ln -s /usr/bin/nodejs /usr/bin/node
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs
nvm install NEW_VER
nvm use XXX
nvm use OLD_VER
scl enable rh-nodejs8 bash
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