就是这个恶毒的提示,太让我烦恼了,一开始我用了腾讯的 lemon 清理工具,可是发现他并不能很好地解决个人问题,没有办法彻底找出个人缓存文件。因为本人是 256G Mac (穷....),真的,256G 太不够用了(固然不是由于我....的缘由),俗话说贫穷限制了个人想象力,可是没有限制个人创造力。另外一点,就是本人是个写前端的,经过对本地的node_modules
, npm
,yarn cache
等缓存的分析,发现让我大吃一惊,几十G的缓存。前端
基于以上前提,我就开发了一个工具,名字叫 shark-cleaner,寓意就是想让它想鲨鱼同样,快速!可以快速找出我本地文件中的软件开发缓存。node
这是它已经为我清理出的node_modules
垃圾。git
Mac / Linux:程序员
$ cd documents
$ find . -name 'node_modules' -type d -prune -print -exec rm -rf '{}' \;
复制代码
Windows:github
$ cd documents
$ FOR /d /r . %d in (node_modules) DO @IF EXIST "%d" rm -rf "%d"
复制代码
Powershell Users:web
Get-ChildItem -Path "." -Include "node_modules" -Recurse -Directory | Remove-Item -Recurse -Force
复制代码
社区有一些相关的方案,可是我想的是可以提供一个可视化的,跨平台的,而且有详细颗粒度信息的工具。npm
一开始我想的是 electron
来作这件事是比较合适的,可是我想等不及想要更加快速的开发,想着是先用命令行代替。(其实核心功能实现后,迁移到 electron
仍是很方便的)。json
所以我采用了一种 web + node cli
的方式。下面是工具的主架构,有点相似于electron
的思路吧缓存
视频展现地址: s3.qiufengh.com/shark-clean…
若是你的项目都在一个目录下,建议填写你的项目主目录,这样会大大加快扫描的速度。
因为一些目录是固定的,所以为静态列表扫描方式。
获取 package.json
中的 author
和 description
进行展现,以及标注完整路径,能够帮助回忆,来肯定是否删除。
文件太多了?shift + click 来支持多选模式。
国外用户也能够轻松享受到这个工具带来的便利
npm install -g shark-cleaner
shark
复制代码
1.主流语言的缓存路径支持(包括但不限Go
、Python
、Java
等)
2.Node 缓存部分的完善(包括yarn、npm)
3.Electron客户端的支持
4.支持按照时间维护来推测清理(例如某个项目1个月未修改来识别须要清理缓存,提升识别垃圾的准确性。)
5.完善的错误提示(文件清理失败等)
6.logo设计
7.统计已经帮助用户清理的垃圾
8.清理历史记录,帮助用户可以快速下回删除的依赖包。
该工具是我断断续续写了一周完成的,难免有许多Bug
,若是使用过程有问题请以 Github Issues
方式提给我,我会尽可能在第一时间进行介入。初衷是,但愿它能成为一款专为程序员定制的清理垃圾工具
。若是你知道语言缓存目录,请求 pr 或者 Issues 方式提给我。
感谢你们,若是以为该工具对你起到了做用,请不要吝啬你的 star
。(固然很是欢迎感兴趣的小伙伴来贡献代码呀) T T 大家的 star
是对我最大的鼓励,让我有足够的动力去不断维护它,迭代它,而后,让大家的开发环境变得更美好,更加整洁。
Github地址: github.com/hua1995116/…
欢迎加入有想法的小伙伴~(聊项目,聊开源均可以)