Bower: "command not found" after installation

Gray Ghost picture Gray Ghost · Apr 6, 2013 · Viewed 89.5k times · Source

I seem to be getting the following when I execute npm install bower -g

/usr/local/share/npm/bin/bower -> /usr/local/share/npm/lib/node_modules/bower/bin/bower
[email protected] /usr/local/share/npm/lib/node_modules/bower

Unfortunately executing any of the bower commands returns -bash: bower: command not found

which npm returns /usr/local/bin/npm and running which node returns /usr/local/bin/node.

Answer

Sindre Sorhus picture Sindre Sorhus · Apr 6, 2013

I assume you installed Node.js through Homebrew, which annoyingly puts installed npm binaries in a place that is usually not in a users path. All you have to do is to add /usr/local/share/npm/bin to your $PATH. You do that by adding export PATH=/usr/local/share/npm/bin:$PATH to your .bashrc/.bash_profile/.zshrc file.

Although I would rather uninstall the Homebrew installed Node.js and install it with the installer from nodejs.org which doesn't have this problem.

This problem is not Bower specific and will be noticeable with any globally installed Node.js binary, eg. grunt, uglify, jshint, etc.