zoukankan      html  css  js  c++  java
  • python--自动删除文件

    1、目的:定期自定删除7天前的数据
    python脚本如下:

    #coding=utf-8
    import os,time,datetime
    
    #需定时删除的目录的上一层路径
    data_dir="/data"
    #获取本地系统上周的时间
    date = os.popen("date -d '(date +%Y%m%d) -7 days' +%Y-%m-%d").read().strip()
    #将date转换成时间格式
    t2 = time.strptime(date,'%Y-%m-%d')
    t2 = datetime.datetime(*t2[:3])
    #初始化文件名称列表
    dir_name = []
    #循环取出目录的绝对路径
    for filename in os.listdir(data_dir):
            filepath = os.path.join(data_dir,filename)
        #只对目录进行操作,获取目录的最后修改时间,并把最后修改时转换成时间格式
            if os.path.isdir(filepath):
            dir_date = os.popen("stat %s|sed -n '7p'|awk '{print $1}'|awk -F ':' '{print $2}'" %filepath).read().strip()
            t = time.strptime(dir_date,'%Y-%m-%d')
            t1 = datetime.datetime(*t[:3])
            if t1>t2:
                print "目录%s近期在用,无法删除!" %filename
            elif t2>t1:
                print "目录%s已废弃超过一周,正在删除%s" %(filename,filepath)
                time.sleep(10)
                os.system("rm -rf %s" %filepath)
            else:
                print "目录%s废弃未超过一周,等待下次检测...." %filename

    服务器的crontab配置如下:

    0 0 * * * /usr/bin/python /data/delete_data.py >>/data/delete_data.log 2>&1
  • 相关阅读:
    Activity的几种启动模式
    android 环境搭建
    认识python中__name__、程序主入口
    32位与64位之谈
    shell中字符串基本用法
    C++ push方法与push_back方法
    8-10总结
    第九章 硬件抽象层:HAL
    第十章 嵌入式Linux的调试技术
    第八章
  • 原文地址:https://www.cnblogs.com/dengtr/p/5027357.html
Copyright © 2011-2022 走看看