( Не повторюйте ці кроки, поки не прочитаєте все )
Для мене всі згадані рішення не спрацювали. Тож я пішов /usr/lib
і бігав туди
for package in `ls node_modules`; do sudo npm uninstall $package; done;
Але він також видалив npm
пакунок і лише половину пакунків (поки він не досяг літери n).
Тож я спробував знову встановити вузол по керівництву вузлом.
# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt-get install -y nodejs
Але це не встановлено npm
знову.
Тому я вирішив перевстановити цілий вузол
sudo apt-get remove nodejs
І знову встановити по керівництву вище.
Зараз NPM знову працює, але глобальні модулі все ще є. Тому я перевірив вміст каталогу /usr/lib/node_modules
і, здається, єдине важливе тут npm
. Тому я відредагував команду вище, щоб видалити все, крімnpm
for package in $(ls node_modules); do if [ "$package" != "npm" ]; then sudo npm uninstall $package; fi; done;
Він видалив усі модулі, які не були префіксом @
. Тож я продовжив цикл для підкаталогів.
for package in $(ls node_modules); do if [ ${package:0:1} = \@ ]; then
for innerPackage in $(ls node_modules/${package}); do
sudo npm uninstall "$package/$innerPackage";
done;
fi; done;
Моя /usr/lib/node_modules
тепер містить лише npm
і пов'язані пакети.