前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Maven仓库清理脚本

Maven仓库清理脚本

作者头像
屈定
发布2018-09-27 11:52:24
2.2K0
发布2018-09-27 11:52:24
举报
文章被收录于专栏:屈定‘s Blog屈定‘s Blog

工作中本地maven仓库随着项目增多会变得越来越大,看着心烦,于是想着清理. 没有发现很好的清理策略,只能从文件以及文件夹修改时间上入手,修改时间小于指定时间的文件夹以及文件都给删除,循环清理几次后仓库应该就干净了.

附上清理脚本,实际上就是递归遍历文件夹然后判断文件更新时间,对比后决定是否要删除.首次清理后仓库从1.5G变为650M,清爽了不少.

代码语言:javascript
复制
import os
import shutil
from datetime import datetime

# maven仓库地址
mvnHome = "/Users/niuli/.m2/repository"
# 删除该日期前的文件以及文件夹
deleteDateBefore = datetime(2017,4,1,0,0,0)


def listPathAndClean(pathContext):
    pathDir = os.listdir(pathContext)
    for filename in pathDir:
        filepath = os.path.join(pathContext, filename)
        currentTimeFile = datetime.fromtimestamp(os.path.getmtime(filepath))

        # 对比时间
        if deleteDateBefore > currentTimeFile:
            print("filePath:"+filepath+"-----updatetime:"+str(currentTimeFile))
            print('delete this')
            if (os.path.isdir(filepath)):
                shutil.rmtree(filepath)
            else:
                os.remove(filepath)
            continue
            
        # 不到期的则深入遍历
        if os.path.isdir(filepath):
            listPathAndClean(filepath)



if __name__ == '__main__':
    print(deleteDateBefore)
    print('start list should delete path')
    listPathAndClean(mvnHome)
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-07-29,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档