节点用户目录导致找不到命令

时间:2015-01-18 12:54:01

标签: node.js command-line terminal npm

我吝啬地运行此script以停止在npm -g命令上使用sudo,现在我的node_modules位于: /Users/myusername/.npm-packages/lib/node_modules

在尝试运行命令时,yo bower我得到-bash: bower: command not found

我是否需要将此目录链接到usr / bin?

在试图解决这个问题时,我已经运行了很多命令并创建了符号链接,我觉得我的系统真的很乱,我真的看不到发生了什么?帮助确保我的系统清洁将是非常有帮助的。

1 个答案:

答案 0 :(得分:1)

通常,确保您不需要管理员权限来运行npm命令是个好主意。您遇到的问题是,npm现在安装其命令(/Users/myusername/.npm-packges/bin)的目录不在您的PATH中。 PATH是shell搜索您键入的命令的目录列表。

您可以通过将以下行添加到主目录中的.bashrc文件来将目录添加到路径中(如果它不存在,则创建它)。

export PATH="${PATH}:/Users/myusername/.npm-packages/bin"

打开一个新的终端,凉亭应该再次工作。

作为额外提示,我相信你在OS X上运行?使用Homebrew安装Node.js时,它会以适当的方式自动安装(全局安装软件包不需要sudo,它们只能工作)。下次安装Node.js(或其他东西)时,Homebrew可能值得一试。