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

node user directory leading to command not found

我很高兴 运行 这个 script 不再需要在 npm -g 命令上使用 sudo,现在我的 node_modules 位于: /Users/myusername/.npm-packages/lib/node_modules

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

我需要link这个目录到usr/bin吗?

在尝试解决这个问题时,我有 运行 很多命令并创建了符号 links,我觉得我的系统真的一团糟,我无法真正看到发生了什么?帮助确保我的系统干净会很有帮助。

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

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

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

打开一个新的终端,bower 应该又可以工作了。

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