命令全局删除所有npm模块?

删除回忆录丶 提交于 2020-03-02 18:30:24

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


#1楼

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

C:\\Users\\username\\AppData\\Roaming\\npm

您可以通过键入%appdata% (在资源管理器,运行提示或开始菜单中)快速到达此处。


#2楼

使用此代码卸载任何包:

npm rm -g <package_name>

#3楼

我试过凯斯特纳德的解决方案,但对我来说似乎并不完美。 在deps树本身的最后一个awk之后留下了很多特殊符号。

所以,我想出了自己对Kai Sternad解决方案的修改(从羊绒的想法中得到一点帮助):

npm ls -gp --depth=0 | awk -F/node_modules/ '{print $2}' | grep -vE '^(npm|)$' | xargs -r npm -g rm

npm ls -gp --depth=0可分析的格式列出所有全局安装的npm模块:

/home/leonid/local/lib
/home/leonid/local/lib/node_modules/bower
/home/leonid/local/lib/node_modules/coffee-script
...

awk -F/node_modules/ '{print $2}'从路径中提取模块名称,形成所有全局安装模块的列表。

grep -vE '^(npm|)$'删除npm本身和空白行。

xargs -r npm -g rm为列表中的每个模块调用npm -g rm

就像Kai Sternad的解决方案一样,它只能在* nix下工作。


#4楼

npm ls -gp | awk -F/ '/node_modules/&&!/node_modules.*node_modules/&&!/npm/{print $NF}' | xargs npm rm -g

#5楼

sed解决方案

npm -gp ls | sed -r '/npm$|(node_modules.*){2,}/d; s:.*/([^/]+)$:\1:g' | xargs npm rm -g
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!