是否有删除所有全局npm模块的命令?如果没有,你有什么建议?


当前回答

只需切换到您的%appdata%/npm目录并运行以下…

for package in `ls node_modules`; do npm uninstall $package; done;

EDIT:这个命令在npm 3.3.6 (Node 5.0)中中断。我现在使用以下Bash命令,我已经映射到我的.bashrc文件中的npm_uninstall_all:

npm uninstall `ls -1 node_modules | tr '/\n' ' '`

额外的好处?这要快得多!

https://github.com/npm/npm/issues/10187

如何卸载包中列出的所有依赖项。json (NPM) ?

其他回答

如果你有MSYS for Windows:

rm -rf ${APPDATA//\\/\/}/npm
sudo npm uninstall npm -g

或者,如果失败了,获取npm源代码,并执行:

sudo make uninstall

手动删除所有与npm相关的内容:

rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/npm*

如果你有Intellij Webstorm,你可以使用它内置的图形包管理器。

以root用户打开并创建一个空项目。去

>文件设置>语言和框架> Node.js和NPM

在那里您将看到所有已安装的包。卸载很容易,你可以选择和取消选择任何包,你想卸载,Ctrl+一个工作以及。

对于使用Powershell的用户:

npm -gp ls --depth=0 | ForEach-Object { Get-Item $_ } | Where { $_.Name -ne 'npm' } | ForEach-Object { npm rm -g $_.Name }

清除缓存。

npm cache clear

对于一种更手动的方法,它不涉及文件浏览器,不关心安装在哪里,以后不太可能崩溃,100%跨平台兼容,并且由于额外的步骤而感觉更安全,请使用这种方法。

npm ls -g --depth=0 Copy output Paste into favorite code editor (I use vsCode. Great multi-cursor editing) Check for any packages you'd like to keep (nodemon, yarn, to name a few) Remove those lines Remove every instance of +-- or other line decorators Remove all the version information (eg '@2.11.4') Put all items on same line, space separated Add npm uninstall -g to beginning of that one line. Mine looks like npm uninstall -g @angular/cli @vue/cli express-generator jest mocha typescript bindings nan nodemon yarn, but I didn't install many packages globally on this machine. Copy line Paste in terminal, hit enter if not already added from the copy/paste Look for any errors in the terminal. Check npm ls -g to make sure it's complete. If something got reinstalled, rinse and repeat

其他仅使用cli的方法非常适合计算机管理员从相同的ssh或Puppet同时为100台几乎相同的计算机做一些事情。但如果你只做一次,甚至一年5次,这就容易多了。