我正在尝试编写一个可以在某个日期之前和之前查找文件并删除它们的函数。我正在使用结构,我想从我的服务器中删除旧的日志文件。该文件夹包含以下格式的文件:
['user-2015-10-16.log.gz', 'user-2015-10-19.log.gz', 'user-2015-10-22.log.gz', 'user-2015-10-25.log.gz', 'admin-2015-10-17.log.gz', 'admin-2015-10-20.log.gz', 'admin-2015-10-23.log.gz', 'requests.log', 'user-2015-10-17.log.gz', 'user-2015-10-20.log.gz', 'user-2015-10-23.log.gz', 'extra.log', 'admin-2015-10-18.log.gz', 'admin-2015-10-21.log.gz', 'admin-2015-10-24.log.gz', 'user-2015-10-18.log.gz', 'user-2015-10-21.log.gz', 'user-2015-10-24.log.gz', 'admin-2015-10-16.log.gz', 'admin-2015-10-19.log.gz', 'admin-2015-10-22.log.gz', 'admin-2015-10-25.log.gz']
我想要做的是将文件从今天保留到4天,即保留25th, 24th, 23rd, 22nd
中的文件并删除其余文件(保留extra.log和requests.log)。
我试过了:
import datetime
days = 4
user = []
admin = []
for i in range(days):
that_date = datetime.datetime.now() - datetime.timedelta(days=i)
use = 'user-{}.log.gz'.format(that_date)
adm = 'admin-{}.log.gz'.format(that_date)
# user.append(user)
# admin.append(admin)
print user, adm
但是很晚才意识到这给了我想保留的文件而不是我要删除的文件。
非常感谢任何帮助
编辑:如果尚未清除,则每天使用user-(todays date)
格式生成文件,因此无法对任何内容进行硬编码。