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


当前回答

Windows:

rmdir /s /q "%appdata%/npm"

其他回答

Windows:

rmdir /s /q "%appdata%/npm"

如果你安装了jq,即使没有grep/awk/sed,你也可以运行:

npm ls -g --json --depth=0 |
  jq -r '.dependencies|keys-["npm"]|join("\n")' |
  xargs npm rm -g

在Debian和衍生版本上,你可以安装jq:

sudo apt-get install jq

对于那些使用Windows的人来说,删除所有全局安装的npm包的最简单的方法是删除以下内容:

C:\用户\用户名\应用数据\漫游\npm

您可以通过在资源管理器、运行提示符或开始菜单中键入%appdata%/npm快速到达那里。

下面是我尝试的一个更优雅的解决方案,我让npm为我做所有的工作。

# On Linux Mint 19.1 Cinnamon
# First navigate to where your global packages are installed.

$ npm root # returns /where/your/node_modules/folder/is
$ cd /where/your/node_modules/folder/is # i.e for me it was cd /home/user/.npm-packages/lib/node_modules

然后,如果你进行npm卸载或npm删除,这些模块将被视为正常的项目依赖项。它甚至生成一个包锁。Json文件,当它完成:

$ npm remove <package-name> # you may need sudo if it was installed using sudo  

使用此代码卸载任何包:

npm rm -g <package_name>