admin管理员组文章数量:1624782
最近测试自动化跑的比较多,导致堆积的数据特别多,服务器磁盘经常爆满,先用了网上搜的Linux shell脚本清理脚本,结果不理想,好像只能根据时间戳去删除某个时间之前的文件,不能满足我的诉求。
因为每次跑自动化,都需要拉取最新的测试工程和依赖【差不多要2个G】,每天每个人都要跑好多遍,导致磁盘消耗很高,而我是需要删除前一天所有的测试工程和依赖,而网上的只会删除部分文件,磁盘占用还是很高,所以我根据自己的需要写了个清理脚本,并加入定时任务,每天凌晨2点清理。
1. 清理脚本
copy后,保存为clearworkspace.py,然后加个可执行权限
# coding: utf-8
import datetime
import os,csv,time
# 清理linux工作空间文件
def clearWorkspace(self):
# 先用关键字搜索'testngCase',获取文件列表和日期,然后存入a.txt
os.popen("ls -la /home/admin/workspace/ |grep 'testngCase' | awk '{print $7,$9}' > a.txt")
time.sleep(2)
# 然后打开a.txt,读取文件列表
with open('a.txt','r') as f:
row_list = csv.reader(f)
for row in row_list:
x,y = row[0].split(' ')
# 判断日期是否为当天,如果不是,则删除文件
if (int(x) < int(datetime.date.today().day)):
os.popen("rm -rf /home/admin/workspace/{}".format(y))
print('delete {}'.format(y))
else:
print('-'*10)
2.加入定时任务
然后用crontab -e,加入定时任务,每天2点清理
0 2 * * * python3 /home/admin/clearworkspace.py
crontab -l 查看定时任务是否生效
版权声明:本文标题:Linux服务器清理不干净,试试这个脚本 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1728914958a1179537.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论