( Non replicare questi passaggi finché non hai letto tutto )
Per me tutte le soluzioni menzionate non hanno funzionato. Così sono andato /usr/lib
e sono corso lì
for package in `ls node_modules`; do sudo npm uninstall $package; done;
Ma ha anche rimosso il npm
pacchetto e solo metà dei pacchetti (fino a raggiungere la lettera n).
Quindi ho provato a installare nuovamente il nodo dalla guida del nodo.
# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt-get install -y nodejs
Ma non è stato installato di npm
nuovo.
Quindi ho deciso di reinstallare l'intero nodo
sudo apt-get remove nodejs
e di nuovo installare dalla guida sopra.
Ora NPM funziona di nuovo ma i moduli globali sono ancora presenti. Quindi ho controllato il contenuto della directory /usr/lib/node_modules
e sembra che l'unica cosa importante qui sia npm
. Quindi ho modificato il comando sopra per disinstallare tutto trannenpm
for package in $(ls node_modules); do if [ "$package" != "npm" ]; then sudo npm uninstall $package; fi; done;
Ha rimosso tutti i moduli che non erano prefissati @
. Così ho esteso il ciclo per le sottodirectory.
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;
Il mio /usr/lib/node_modules
ora contiene solo npm
pacchetti collegati.