Reputation: 409
I'm using Ubuntu 16.04
I removed NPM in order to install older version. (I can't exactly command which I used).
now I can't install it again.
npm -v
output: bash: /usr/bin/npm: /usr/bin/nodejs: bad interpreter: No such file or directory
which npm
output: /usr/bin/npm
curl -L http://npmjs.org/install.sh | sudo sh
Output:
`install npm@latest
fetching: https://registry.npmjs.org/npm/-/npm-5.5.1.tgz
module.js:544
throw err;
^
Error: Cannot find module '/tmp/npm.9881/package/bin/read-package-json.js'
at Function.Module._resolveFilename (module.js:542:15)
at Function.Module._load (module.js:472:25)
at Function.Module.runMain (module.js:682:10)
at startup (bootstrap_node.js:191:16)
at bootstrap_node.js:613:3
up to date in 0.059s
/usr/local/bin/npx -> /usr/local/lib/node_modules/npm/bin/npx-cli.js
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
+ [email protected]
added 1 package in 1.907s
It worked`
UPD: Solved. Remove node/nodejs/npm completely and remove all relative folders a then reinstall via NVM helped. https://www.digitalocean.com/community/tutorials/how-to-install-node-js-with-nvm-node-version-manager-on-a-vps
Upvotes: 5
Views: 40600
Reputation: 847
I solved it using the following simple steps in my ubuntu 18.04
which npm
hash -r
npm -v
Upvotes: 12
Reputation: 41
If there is a character or a space other than the English characters from the windows user name, it can also be caused by this.
I'm talking about the installation of global packages. If you are installing a package on a specific project, it may also be caused by the lack of package.json.
Upvotes: 1
Reputation: 121
Try this command:
sudo npm install -g npm@latest
For latest version or otherwise:
sudo npm install -g npm@<version_no_here>
For specific version.
Upvotes: -3
Reputation: 1279
Better way to install nodejs is via nvm. Here you can install/use multiple version of nodejs in a machine.
https://github.com/creationix/nvm
then
nvm install $vesionNo
nvm use $versionNO
// for default
nvm alias default node
Upvotes: 4
Reputation: 817
In some Linux distributions, node is installed on /usr/bin/nodejs
and not on /usr/bin/node
.
What I did, is install nodejs-legacy, and it solved the problem. It creates a symlink from /usr/bin/nodejs
to /usr/bin/node
.
So, what I recommend (as the easiest solution) is to install nodejs-legacy
:
sudo apt-get install nodejs-legacy
Upvotes: 2