python 删除指定时间间隔之前的文件实例

遍历指定文件夹下的文件,根据文件后缀名,获取指定类型的文件列表;根据文件列表里的文件路径,逐个获取文件属性里的“修改时间”,如果“修改时间”与“系统当前时间”差值大于某个值,则删除该文件。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""Document: Remove Synctoycmd sync expired .tmp files"""
import os
import time
import datetime
def diff():
  '''time diff'''
  starttime = datetime.datetime.now()
  time.sleep(10)
  endtime = datetime.datetime.now()
  print "time diff: %d" % ((endtime-starttime).seconds)
def fileremove(filename, timedifference):
  '''remove file'''
  date = datetime.datetime.fromtimestamp(os.path.getmtime(filename))
  print date
  now = datetime.datetime.now()
  print now
  print 'seconds difference: %d' % ((now - date).seconds)
  if (now - date).seconds > timedifference:
    if os.path.exists(filename):
      os.remove(filename)
      print 'remove file: %s' % filename
    else:
      print 'no such file: %s' % filename
FILE_DIR = 'D:/'
if __name__ == '__main__':
  print 'Script is running...'
  #diff()
  while True:
    ITEMS = os.listdir(FILE_DIR)
    NEWLIST = []
    for names in ITEMS:
      if names.endswith(".txt"):
        NEWLIST.append(FILE_DIR + names)
    #print NEWLIST
    for names in NEWLIST:
      print 'current file: %s' % (names)
      fileremove(names, 10)
    time.sleep(10)
  print "never arrive..."

相关推荐