经过一天的尝试,终于写了一个脚本,清理日志文件,源代码如下:
#!/usr/bin/python#-*-coding=utf8 -*-import timeimport os N = 1 #设置删除多少天钱的文件def deletefile(path): for eachfile in os.listdir(path): filename = os.path.join(path,eachfile) if os.path.isfile(filename): lastmodifytime = os.stat(filename).st_mtime print ‘======================‘ print "当前时间是: %s" % time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time())) print "%s 文件的最后修改时间是: %s" % (filename,time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(lastmodifytime))) print "%s 文件的创建时间是: %s" % (filename,time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(os.stat(filename).st_ctime))) endfiletime = time.time() - 3600 * 24 * N #设置删除多久之前的文件 print "删除文件的截至时间是: %s" % time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(endfiletime)) if endfiletime > lastmodifytime: print "我要删除文件 : %s" % filename os.remove(filename) elif os.path.isdir(filename): #如果是目录则递归调用当前函数 deletefile(filename) if __name__ == ‘__main__‘: path = r"D:\python_script\log" #指定删除的目录位置 deletefile(path)
备注:其中print的可以注释掉,避免输出到控制台,由于这个是在windows中使用pycharm编辑的,直接放到linux中可能出现汉字乱码的情况,请调整linux字符集或者将汉字自己换成英文即可
时间: 2024-11-05 09:12:33