一条命令删除目录下的所有node_modules
ztj100 2024-11-07 13:39 17 浏览 0 评论
作为前端开发,应该都了解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/
相关推荐
- MySQL的10种常用数据类型(列举mysql中常见的数据类型)
-
MySQL的数据类型常用的数据类型有:整型(xxxint)位类型(bit)...
- 大数据量惯用优化方法(大数据 量化)
-
优化人员工作时免不了要接触到大数据量的问题,下面就将平时收集的一些关于大数据量的优化方法整理记录一下,也是和大家一起共享哦。1.应尽量避免在where子句中对字段进行null值判断,否则将导致...
- MYSQL有哪些数据类型(mysql数据类型主要包括)
-
整理下以便查阅,还想吐槽下:这头条怎么就不能给文章分类呢?整数类型...
- Qt实现表格树控件-自绘树节点虚线
-
一、开心一刻...
- 如何在Qt中实现图形打印?(小学一年级数学图形图片打印)
-
在Qt中,可以使用QPrinter类和QPainter类来实现图形的打印功能。以下是一个简单的示例,演示了如何在Qt中进行图形的打印:...
- Qt组件库之桌面图标系统实现(qt组件库之桌面图标系统实现了)
-
先来看看实现效果之前效果都放在最后,是不是大家不看到最后就走了, ̄□ ̄||,所以打算以后就先放效果在写实现方法。...
- QT实现抖动文字和滚动文字,附源码
-
前言不知道大家有没有发现今天的文章有什么不一样,哈哈,我自己胡拼乱凑弄了一个logo,好不好看就先不说了,最起码萌萌哒...当然这不是今天的重点,在做logo的时候,我原本想让文字动起来的,奈何技术有...
- Qt 图形(QPainterPath)(qt图形界面教程)
-
简述QPainterPath类提供了一个容器,用于绘图操作,可以创建和重用图形形状。...
- Qt在数据可视化项目实战:C++仪表板开发
-
Qt里面搞数据可视化,咱今儿就聊聊怎么用C++整一个漂亮的仪表盘。...
- 实战PyQt5: 152-QChart图表之日期时间坐标轴
-
在统计图表中,使用时间作为某一坐标轴的情况非常常见,比如,常见的一年间月度销售统计,财务统计等等。在QChart中提供了日期时间坐标轴QDateTimeAxis类可以方便地将日期和时间添加到图表的坐标...
- 我的Qt五子棋AI已连胜238局,不服的来战!
-
AlphaGo之父DemisHassabis曾指出...
- Qt 自适应图片之scaled()函数详解
-
如何在改变窗口组件的情况下改变窗口背景图片的大小,我们通常会使用Qt自带的scaled()函数;QImage、QPixmap等绘图设备类都提供scaled()函数。...
- PyQt5界面美化(一)(pyqt5酷炫界面)
-
借助FittenCode插件进行PyQt5界面美化!例如从网上找到一张漂亮的UI示意图:接下来借助FittenCode插件一步一步实现如上图中的界面。首先我们先进行提问,它会给出一个大致框架的代码...
- 多线程Qt下的八条规则(qt多线程直接处理数据)
-
相信资深Qter都认识GiuseppeD’Angelo,这位有着二十多年Qt开发经验,Qt源码行数贡献的最多的开发者之一,同时也是Qt项目的审批者,所说话的份量不言而喻。原文作者:...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- idea eval reset (50)
- vue dispatch (70)
- update canceled (42)
- order by asc (53)
- spring gateway (67)
- 简单代码编程 贪吃蛇 (40)
- transforms.resize (33)
- redisson trylock (35)
- 卸载node (35)
- np.reshape (33)
- torch.arange (34)
- node卸载 (33)
- npm 源 (35)
- vue3 deep (35)
- win10 ssh (35)
- exceptionininitializererror (33)
- vue foreach (34)
- idea设置编码为utf8 (35)
- vue 数组添加元素 (34)
- std find (34)
- tablefield注解用途 (35)
- python str转json (34)
- java websocket客户端 (34)
- tensor.view (34)
- java jackson (34)