当前位置:首页 > 技术分析 > 正文内容

一条命令删除目录下的所有node_modules

ruisui885个月前 (01-26)技术分析42

作为前端开发,应该都了解node_modules这个目录,尤其同时维护多个项目的时候,每个项目都会产生一个node_modules,每个node_modules少则几十兆,多则几百甚至上千兆,随着时间的积累,维护项目的增加,整个项目目录体积会越来越大。

node_modules原罪

删除之前,先了解点node_modules的背景。

node_modules是在node工程项目中,通过npm install命令安装的依赖包。实际项目开发中,可能直接使用到的依赖并没有那么多,但是每个npm包又依赖着其他的包,这样层层嵌套引用,那整个的node_modules就会变得特别大了。

尤其早期npm,对依赖的管理方式并不好,比如有A、B两个包均引用了C包,并且,两个包依赖的C包版本不同,那么执行npm install安装时,会把不同版本的C包分别安装到A和B两个包各自目录下的node_modules文件夹,这些文件都会大量增大整个node_modules目录的体积。尽管这种依赖方式在后期的npm升级迭代过程中不断的打磨优化,但是node_modules太重的问题似乎并没有彻底解决的办法。

查询目录下所有的node_modules目录和所占空间

Linux中的命令:

find . -name "`node_modules`" -type d -prune | xargs du -chs

Windows中的命令(当然,Windows中也可以借助一些shell客户端或者WLS等方式,执行上面的Linux命令,并且我相信更多人会选择这种方式):

FOR /d /r . %d in (`node_modules`) DO @IF EXIST "%d" echo %d"

在整理这篇文章前,我已经把我所有项目的node_modules删掉了,今天一边整理文章,一边工作,又安装了几个项目:

从图中看,这才区区5个项目而已,node_modules就已经占用了1.2G的硬盘空间,着实吓人呢。

删除目录下所有的node_modules目录

删除命令和查询命令差不多

Linux系统中

find . -name "`node_modules`" -type d -prune -exec rm -rf '{}' +

Windows系统中

FOR /d /r . %d in (`node_modules`) DO @IF EXIST "%d" rm -rf "%d"

本文永久链接:
https://www.mulianju.com/delete-all-node_modules/

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/554.html

标签: 卸载npm包
分享给朋友:

“一条命令删除目录下的所有node_modules” 的相关文章

代码管理-9-gitlab的使用和设置

gitlab使用1、外观设置完成后保存,返回登录页面查看关于注册,有些公司是不允许打开的,,有些人数非常多的公司就需要打开注册的功能,让人员自己注册,我们来给他特定的权限就可以,毕竟人非常多的时候还由我们来给她们注册就非常不现实了,工作量会很大2、自动注册3、组&用户&项目创建组设置组名称、描述等创...

使用cgroup限制进程资源

这里使用containerd项目中的cgroup包来实现进程资源限制。先写一个耗费一个CPU并且一秒增加10m内存的测试进程package mainimport ( "fmt" "math/rand" "time")func main() { go f...

编码 10000 个小时后,开发者悟了:“不要急于发布!”

【CSDN 编者按】在软件开发的道路上,时间是最好的老师。根据“一万小时定律”,要成为某个领域的专家,通常需要大约一万小时的刻意练习。本文作者身为一名程序员,也经历了一万小时的编程,最终悟出了一个道理:慢即是快,重视架构设计和代码质量,确保每一行代码都经得起时间的考验。作者 | Sotiris Ko...

最快清除数组空值?分享 1 段优质 JS 代码片段!

本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿!大家好,我是大澈!本文约 600+ 字,整篇阅读约需 1 分钟。今天分享一段优质 JS 代码片段,用最简洁的代码清除了数组中的空值。老规矩,先阅读代码片段并思考,再看代码解析再思考,最后评论区留下你的见解!const arr...

一套代码,多端运行——使用Vue3开发兼容多平台的小程序

介绍Vue3发布已经有一段时间了,从目前来看,其生态还算可以,也已经有了各种组件库给予了支持,但是不管是Vue3还是Vue2都无法直接用来开发小程序,因此国内一些技术团队针对Vue开发了一些多端兼容运行的开发框架,今天来体验一下使用Taro来体验一下使用Vue3开发多平台运行的小程序,以便于兼容各大...

thinkphp8+vue3微信小程序商城,发布公众号App+SAAS+多商户

项目介绍三勾小程序商城基于thinkphp8+vue3+element-ui+uniapp打造的面向开发的小程序商城,方便二次开发或直接使用,可发布到多端,包括微信小程序、微信公众号、QQ小程序、支付宝小程序、字节跳动小程序、百度小程序、android端、ios端。支持主题色+自定义头部导航+自定义...