1. #!/usr/bin/env python
  2. #-*- coding: utf-8 -*-
  3. """
  4. @Project:Py
  5. @author:
  6. @Email:
  7. @Software: PyCharm
  8. @file: test_rm.py
  9. @time: 2018/1/17 0017 下午 14:14
  10. """
  11.  
  12. import os
  13. import time
  14.  
  15. # 备份的指定目录
  16. source = ['/usr/local/src/test1/']
  17. # 备份文件存放路径
  18. target_dir='/home/backup/'
  19. # 备份时长
  20. data = 3
  21. # 备份日志
  22. filebak_log = "/var/log/filebak.log"
  23. # 删除备份文件日志
  24. filerm_log = "/var/log/filerm.log"
  25.  
  26. def file_bak():
  27. """备份指定目录下的文件"""
  28. target=target_dir+time.strftime('%Y%m%d%H%M%S')+'.tar.gz'
  29. cmd='tar -zcPf %s %s '%(target,' '.join(source))
  30. if os.system(cmd)==0 :
  31. with open(filebak_log,'a') as filebak:
  32. filebak.write('successfull backup to %s \n' % target)
  33.  
  34. # crontab
  35. # 0 4 * * * /usr/bin/python /root/demooil_bak.py >> /var/log/demooil_bak.py.log 2>&1
  36.  
  37. def file_rm():
  38. """删除备份目录下超过一定时长的文件"""
  39. f = list(os.listdir(target_dir))
  40. now_time = time.strftime('%Y%m%d%H%M%S')[0:8]
  41. for i in f:
  42. if i[15:] == 'tar.gz':
  43. exit_time = i[0:8]
  44. update_time = int(exit_time) + data
  45. if update_time < int(now_time):
  46. os.remove(target_dir+i)
  47. with open(filerm_log,'a') as file_log:
  48. file_log.write("%s删除备份文件%s \n" % (now_time,i))
  49.  
  50. if __name__ == '__main__':
  51. file_bak()
  52. file_rm()

使用python备份指定目录并删除备份超过一定时长的文件的更多相关文章

  1. 使用python备份数据库并删除备份超过一定时长的文件

    #!/usr/bin/env python #-*- coding: utf-8 -*- """ @Project:Py @author:sandu @Email: sa ...

  2. Python 实现指定目录下 删除指定大小的文件

    import os, sys from stat import * BIG_FILE_THRESHOLD = 6000L #1000000L dict1 = {} # dict2 = {} # def ...

  3. Sql Server自动备份数据库,定期删除备份

    //实现:每天自动备份数据库,定期删除备份 //步骤:[开始]--[所有程序]--[Microsoft SQL Server 2005]--[SQL Server Management Studio] ...

  4. python获取指定目录下所有文件名os.walk和os.listdir

    python获取指定目录下所有文件名os.walk和os.listdir 觉得有用的话,欢迎一起讨论相互学习~Follow Me os.walk 返回指定路径下所有文件和子文件夹中所有文件列表 其中文 ...

  5. python实现指定目录下批量文件的单词计数:并发版本

    在 文章 <python实现指定目录下批量文件的单词计数:串行版本>中, 总体思路是: A. 一次性获取指定目录下的所有符合条件的文件 -> B. 一次性获取所有文件的所有文件行 - ...

  6. Python获取指定目录下所有子目录、所有文件名

    需求 给出制定目录,通过Python获取指定目录下的所有子目录,所有(子目录下)文件名: 实现 import os def file_name(file_dir): for root, dirs, f ...

  7. Python复制指定目录的各个子目录下的同名文件到指定文件夹并重命名

    Python复制指定目录的各个子目录下的同名文件到指定文件夹并重命名 #编码类型 #-*- coding: UTF-8 -*- #导入包 import os import shutil srcpath ...

  8. Java版本的删除指定目录及子目录下名叫“xxx.txt”的所有文件

    以前写过一个python版本的,但是在查找文件路径的时候出现错误,无法正确的获取到文件的路径,就造成无法删除该路径下的“xxx.txt”文件. 当时以为是windows版本系统的错误造成这个问题的,也 ...

  9. Python列出指定目录下的子目录/文件或者递归列出

    1.python只列出当前目录(或者指定目录)下的文件或者目录条目 import os files,dirs=[],[] for item in os.listdir(): if os.path.is ...

随机推荐

  1. 微信公众号开发之获取微信用户的openID

    (注:openID同一用户同一应用唯一,UnionID同一用户不同应用唯一.不同应用指微信开放平台下的不同用户.) 1.  申请测试号(获得appID.appsecret) 2.  填写服务器配置并验 ...

  2. Spring 的IOC和DI

    IOC:IOC其实就是一种容器,该容器会主动的将资源推送给他所管理的组件, 组件所要做的仅是一种合适的方式来接受资源,这种行为也被称为查找的被动形式! IOC的反转控制:传统应用程序是由我们自己在对象 ...

  3. Untiy中的数据平滑处理

    本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/50680237 作者:car ...

  4. maven 创建web项目出错

    错误的信息: .m2/repository/org/apache/maven/archetypes/maven-archetype-webapp/maven-metadata-central.xml ...

  5. 上机题目(中级)- 两个超级大的整数相加相减 (Java)

    代码例如以下: public class AddSub { public static void main(String[] args) { String a="46328648326846 ...

  6. CDH使用秘籍(一):Cloudera Manager和Managed Service的数据库

    背景 从业务发展需求,大数据平台须要使用spark作为机器学习.数据挖掘.实时计算等工作,所以决定使用Cloudera Manager5.2.0版本号和CDH5. 曾经搭建过Cloudera Mana ...

  7. c# 无法加载xxx.dll 找不到指定的模块(如何指定文件夹)

    如果直接放在项目运行目录,例如bin/debug可以直接加载,但是这样比较乱. 如果在放debug里面的一个文件夹里面,有可能会报错“无法加载xxx.dll 找不到指定的模块”. 如果路径写成这样就会 ...

  8. nyoj--95--众数问题(水题)

    众数问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 所谓众数,就是对于给定的含有N个元素的多重集合,每个元素在S中出现次数最多的成为该元素的重数, 多重集合S重的重 ...

  9. oracle手工生成AWR报告方法

    AWR(Automatic Workload Repository)报告是我们进行日常数据库性能评定.问题SQL发现的重要手段.熟练掌握AWR报告,是做好开发.运维DBA工作的重要基本功. AWR报告 ...

  10. js 智能识别收获地址

    项目地址https://github.com/wzc570738205/smart_parse 支持以下数据格式 马云,1351111111,北京市朝阳区姚家园3楼 马云1351111111北京市朝阳 ...