前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >快速删除工程下所有的node_modules目录

快速删除工程下所有的node_modules目录

作者头像
CRPER
发布2022-03-08 15:10:03
2.8K0
发布2022-03-08 15:10:03
举报
文章被收录于专栏:CRPER折腾记CRPER折腾记

前言

就是如何合理又快速的删除某个工程下所有的node_modules目录; 其实用shell来解决这个场景就很方便了,都不用装第三方依赖; 一般类unix或linux的系统基本自带的两个命令, find rm

效果图

image.png
image.png

这个场景出现在npm 7 workspace 模式下, monorepo的一些包会安装一些自己独特的依赖; 这样工程内会存在多个地方有node_modules这个目录;

什么时候需要删除?

当包依赖发生重大变更的时候, 我们就需要一个相对干净的环境去重装依赖,使其能正确安装并且解析了;

脚本

一般来说若是package-lock.json存在,可能要先删除这个文件; 之后再删除node_modules, 在项目根路径~

代码语言:javascript
复制
# 删除 package-lock.json
rm -rf package-lock.json

# 递归删除下工程内的所有node_modules
find . -name "node_modules" -type d -exec rm -rf '{}' +
# 命令拆解注释
# . 当前目录
# -name 名字匹配,指定字符串作为寻找文件或目录的范本样式;
# -type 查询文件类型。 -d 就是目录
# -exec 就是匹配后执行一些命令
# rm -rf '{}' 删除匹配到到('{}')
# + 是个骚操作
# 一个-exec只能执行一个命令,而且必须在命令后面加上终结符,终结符有两个:“;”和“+”。
# 其中";" 会对每一个find到的文件去执行一次cmd命令。而”+“让find到的文件一次性执行完cmd命令。

总结

谢谢阅读,有不对之处请留言,会及时修正~

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021/07/21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 效果图
  • 什么时候需要删除?
  • 脚本
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档