zshrc“命令未找到:npm”
所以我正在研究学习node.js.我一直在关注this tutorial安装它并尝试一些东西。
无论如何,npm表现得非常奇怪。它会在一段时间内正常工作(例如我改变了它的查看器配置设置),然后突然'消失',以便下次我进入
npm ...(anything)
在命令行中,我的shell通知我没有找到npm命令。以前,使用nvm卸载然后重新安装npm已经有效了,但是我不想每隔十分钟就这样做,而且我突然停止工作对我来说非常奇怪。
我想最后一次,它在我编辑然后重新获取我的〜/ .zshrc文件后停止工作 - 只是添加了npm和节点制表符完成插件。
知道发生了什么事吗?我会发布几个基本命令的结果,但我对sysadmin的东西真的很糟糕,我真的不知道在这里要找什么。
IX -ls
v0.8.22
current: v0.10.2
default -> 0.8 (-> v0.8.22)
哪个节点
/usr/bin/node
哪个npm
npm not found
nvm(这是一个重复的吗?)和npm目录直接在我的根文件夹中。
如果我进入/ usr / bin,则node是文件,而不是目录。还有一个文件npm,但不是文件nvm。
正如上面所说的那样,我真的不知道发生了什么。我搜索过这个,但似乎没有人有这个问题。任何想法发生了什么或如何找出?
编辑注意到我的默认节点不是最新的,我做了所有这些。撇开为什么我的shell会自动切换到bin目录(为什么这似乎是一个github回购 - 不知道我的电脑是什么),这是否提供了任何线索?:
➜ node nvm alias default v0.10.2
default -> v0.10.2
➜ node nvm ls
v0.8.22
current: v0.10.2
default -> v0.10.2
➜ node npm
zsh: command not found: npm
➜ node nvm install npm
######################################################################## 100.0%
Checksums do not match.
Binary download failed, trying source.
Additional options while compiling:
nvm: install N/A failed!
➜ bin git:(master) nvm uninstall npm
N/A version is not installed yet... installing
######################################################################## 100.0%
Checksums do not match.
Binary download failed, trying source.
Additional options while compiling:
nvm: install N/A failed!
➜ bin git:(master) cd ~/rails/node
编辑2 - 我确保节点路径已添加到我的zshrc文件中:
#other stuff...
export PATH=(...):/usr/bin/node
但是当我试着跑的时候
source ~./zshrc
我收到了这个投诉:
.zshrc:11: command not found: npm
指向这些行(添加数字):
10 . ~/nvm/nvm.sh
11 . <(npm completion)
我从上面的tut中得到了,当npm正在工作时回来,查找如何实现tab完成。
回应Jens
这是在我的〜/ nvm / nvm.sh文件中,靠近开头:
# Auto detect the NVM_DIR
if [ ! -d "$NVM_DIR" ]; then
export NVM_DIR=$(cd $(dirname ${BASH_SOURCE[0]:-$0}) && pwd)
fi
# Make zsh glob matching behave same as bash
# This fixes the "zsh: no matches found" errors
if [ ! -z "$(which unsetopt 2>/dev/null)" ]; then
unsetopt nomatch 2>/dev/null
fi
我尝试(并且我认为成功)chmod npm目录使其成为读/写/可执行文件。
回答如下:我遇到的问题是Node和npm都没有。我花了大约6个小时在线搜索解决方案,但没有运气。
正如npm website所说:
npm现在来自node。
我想再次安装Node.js,希望它能解决这些问题,它确实:)
安装完成后完全成功。节点安装程序显示此最终消息:
节点安装在
/usr/local/bin/node
npm安装在
/usr/local/bin/npm
确保
/usr/local/bin is in your $PATH
。
这就是我注意到我的$PATH
和安装目录错误的地方。安装完成后,我就开始运行node和npm了。
希望能帮助到你...