zshrc“命令未find:npm”

所以我正在研究学习node.js。 我一直在按照这个教程安装它,并尝试一些东西了。

无论如何,npm的performance真的很奇怪。 它会工作一段时间(例如,我改变了它的查看器configuration设置),但突然“消失”,以便下一次我进入

npm ...(anything) 

在命令行中,我的shell通知我npm命令没有find。 以前,使用nvm卸载然后重新安装npm已经奏效了,但是我宁愿不要每隔十分钟就这样做一次,对我来说这太突然了,它会突然停止工作。

我想最后一次,我编辑后,停止工作,然后重新我的〜/ .zshrc文件 – 只是添加npm和节点标签完成插件。

任何想法发生了什么? 我会发布几个基本命令的结果,但是我对系统pipe理员的东西非常不满,我真的不知道在这里寻找什么。

nvm -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。

以上所有可能表明,我真的不知道发生了什么事情。 我已经search了这个,但没有人似乎有这个问题。 任何想法正在发生或如何找出?

编辑注意到我的默认节点不是最新的,我做了这一切。 撇开为什么我的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 – 我确保节点path被添加到我的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完成。

对于延斯回应

这是在我的〜/ 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个小时在网上寻找解决scheme,但没有运气。

正如npm网站所说:

npm现在与节点 。

我想再次安装Node.js,希望它能解决这些问题,它确实:)

安装完成后, 节点安装程序显示这个最后的消息:

节点安装在

/usr/local/bin/node

npm被安装在

/usr/local/bin/npm

确保/usr/local/bin is in your $PATH

这就是我注意到我的$PATH和安装目录是错误的。 安装后,我abel运行节点和NPM。

希望能帮助到你…

对于我和其他google到达这里,问题是,当在Ubuntu上调用sudo时,正在使用secure_path ,其中不包括NPM。

您可以禁用secure_Path ,这似乎并不推荐。 所以相反,我只是附加节点斌secure path ,通过NVM安装它看起来像这样对我来说

  • $:sudo su

  • $:visudo

然后将/home/YourUsername/.nvm/versions/node/v8.5.0/bin:添加到secure_pathvariables。

更多信息: sudo更改PATH – 为什么?

老实说,不知道这是否会解决你现在遇到的问题,但是我正在经历的很详细 – 在哪里npm工作,但随机完全停止工作 – 我尝试了一吨相同人们在这里build议的事情没有运气。

是什么结束了我的伎俩,就像这样简单/愚蠢的是:

 source ~/.bash_profile 

我希望我能有一个更好的解释,为什么这是魔法子弹,但至less是有效的!

干杯!

我的Mac有同样的问题,我做了以下几点:

  1. 卸载现有的节点
  2. 转到节点网页并下载软件包,然后安装它
  3. 转到~/.zshrc ,path通常是/usr/local/bin
  4. npm玩得开心
 curl -L https://npmjs.org/install.sh | sh 

我尝试了一个新的CentOS 7安装,它的工作原理!

1)打开你的zshconfiguration文件

 nano ~/.zshrc 

2)添加path

 export PATH="$PATH:/usr/local/share/npm/bin" 

3)按CTRL + X,然后按Y保存文件

4)执行文件的内容

 source ~/.zshrc 

这个简单的过程为我工作:-)