From 68358ac9542723f6526b52d41a5bffa616967aa9 Mon Sep 17 00:00:00 2001 From: yomguy Date: Wed, 25 Jul 2012 10:01:25 +0200 Subject: [PATCH] simplify rm date --- cleanup/rm_date.py | 12 +++++++----- cleanup/rm_date_days.py | 23 +++++++++++++++++++++++ 2 files changed, 30 insertions(+), 5 deletions(-) create mode 100644 cleanup/rm_date_days.py diff --git a/cleanup/rm_date.py b/cleanup/rm_date.py index 34391cd..5120821 100644 --- a/cleanup/rm_date.py +++ b/cleanup/rm_date.py @@ -4,12 +4,13 @@ import os, sys, stat, time if len(sys.argv) <= 2: - exit('Usage : python rm_date.py MONTH YEAR PATH') + exit('Usage : python rm_date.py DAY MONTH YEAR PATH') dir = sys.argv[-1] year = int(sys.argv[-2]) month = int(sys.argv[-3]) +day = int(sys.argv[-4]) date_file_list = [] for root, dirs, files in os.walk(dir): @@ -26,10 +27,11 @@ date_file_list.reverse() # newest mod date now first for file in date_file_list: if os.path.isfile(file[1]): date = file[0].split('_') + d = int(date[0]) m = int(date[1]) y = int(date[2]) - if y <= year and m <= month: - os.remove(file[1]) - print 'removed : ', y, m, file + if y <= year and m <= month and d <= day: + #os.remove(file[1]) + print 'removed : ', y, m, d, file + - \ No newline at end of file diff --git a/cleanup/rm_date_days.py b/cleanup/rm_date_days.py new file mode 100644 index 0000000..31d4feb --- /dev/null +++ b/cleanup/rm_date_days.py @@ -0,0 +1,23 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- + +import os, sys, stat, datetime + +if len(sys.argv) <= 2: + exit('Usage : python rm_date.py DAYS PATH') + + +dir = sys.argv[-1] +days = int(sys.argv[-2]) +today = datetime.datetime.today() + +for root, dirs, files in os.walk(dir): + for filename in files: + file = root + os.sep + filename + file_date = datetime.datetime.fromtimestamp(os.path.getmtime(file)) + diff = today - file_date + if diff.days >= days: + #os.remove(file[1]) + print 'removed : ', file_date, file + + -- 2.39.5