使用datetime函数删除旧文件夹

时间:2009-12-23 16:51:06

标签: python

我正在尝试删除旧文件夹,我问有没有人知道如何设置一个变量,允许我检查变量'todaystr',这是今天的日期,减去这个字符串的7天,并存储另一个变量。我想在一周后自动删除旧文件。下面显示了正在设置的变量'todaystr。

todaystr = datetime.date.today().isoformat()  

我想创建一个变量'oldfile'来存储当前日期减去7天,这样我就可以删除带有此日期的文件。谢谢你的帮助。

2 个答案:

答案 0 :(得分:4)

import datetime
import os
import shutil

threshold = datetime.datetime.now() + datetime.timedelta(days=-7)
file_time = datetime.datetime.fromtimestamp(os.path.getmtime('/folder_name'))

if file_time < threshold:
    shutil.rmtree('/folder_name')

答案 1 :(得分:0)

我与上述答案的关系很有效,我使用的代码到底有所不同。我使用当前日期创建文件夹的名称,因此当每晚构建运行时,它将仅删除7天前命名的文件夹。代码如下:

import datetime  
import os  
import calendar  

today = datetime.date.today()
todaystr = datetime.date.today().isoformat()
minus_seven = today.replace(day=today.day-7).isoformat()


if os.path.exists(minus_seven):
    os.system("sudo rm -rf "+minus_seven)
    print 'Sandboxes from 7 days ago removed'

我使用linux删除文件夹,因为我的代码中包含了一些linux,它运行良好。