使用python备份指定目录并删除备份超过一定时长的文件
#!/usr/bin/env python
#-*- coding: utf-8 -*-
"""
@Project:Py
@author:
@Email:
@Software: PyCharm
@file: test_rm.py
@time: 2018/1/17 0017 下午 14:14
""" import os
import time # 备份的指定目录
source = ['/usr/local/src/test1/']
# 备份文件存放路径
target_dir='/home/backup/'
# 备份时长
data = 3
# 备份日志
filebak_log = "/var/log/filebak.log"
# 删除备份文件日志
filerm_log = "/var/log/filerm.log" def file_bak():
"""备份指定目录下的文件"""
target=target_dir+time.strftime('%Y%m%d%H%M%S')+'.tar.gz'
cmd='tar -zcPf %s %s '%(target,' '.join(source))
if os.system(cmd)==0 :
with open(filebak_log,'a') as filebak:
filebak.write('successfull backup to %s \n' % target) # crontab
# 0 4 * * * /usr/bin/python /root/demooil_bak.py >> /var/log/demooil_bak.py.log 2>&1 def file_rm():
"""删除备份目录下超过一定时长的文件"""
f = list(os.listdir(target_dir))
now_time = time.strftime('%Y%m%d%H%M%S')[0:8]
for i in f:
if i[15:] == 'tar.gz':
exit_time = i[0:8]
update_time = int(exit_time) + data
if update_time < int(now_time):
os.remove(target_dir+i)
with open(filerm_log,'a') as file_log:
file_log.write("%s删除备份文件%s \n" % (now_time,i)) if __name__ == '__main__':
file_bak()
file_rm()
使用python备份指定目录并删除备份超过一定时长的文件的更多相关文章
- 使用python备份数据库并删除备份超过一定时长的文件
#!/usr/bin/env python #-*- coding: utf-8 -*- """ @Project:Py @author:sandu @Email: sa ...
- Python 实现指定目录下 删除指定大小的文件
import os, sys from stat import * BIG_FILE_THRESHOLD = 6000L #1000000L dict1 = {} # dict2 = {} # def ...
- Sql Server自动备份数据库,定期删除备份
//实现:每天自动备份数据库,定期删除备份 //步骤:[开始]--[所有程序]--[Microsoft SQL Server 2005]--[SQL Server Management Studio] ...
- python获取指定目录下所有文件名os.walk和os.listdir
python获取指定目录下所有文件名os.walk和os.listdir 觉得有用的话,欢迎一起讨论相互学习~Follow Me os.walk 返回指定路径下所有文件和子文件夹中所有文件列表 其中文 ...
- python实现指定目录下批量文件的单词计数:并发版本
在 文章 <python实现指定目录下批量文件的单词计数:串行版本>中, 总体思路是: A. 一次性获取指定目录下的所有符合条件的文件 -> B. 一次性获取所有文件的所有文件行 - ...
- Python获取指定目录下所有子目录、所有文件名
需求 给出制定目录,通过Python获取指定目录下的所有子目录,所有(子目录下)文件名: 实现 import os def file_name(file_dir): for root, dirs, f ...
- Python复制指定目录的各个子目录下的同名文件到指定文件夹并重命名
Python复制指定目录的各个子目录下的同名文件到指定文件夹并重命名 #编码类型 #-*- coding: UTF-8 -*- #导入包 import os import shutil srcpath ...
- Java版本的删除指定目录及子目录下名叫“xxx.txt”的所有文件
以前写过一个python版本的,但是在查找文件路径的时候出现错误,无法正确的获取到文件的路径,就造成无法删除该路径下的“xxx.txt”文件. 当时以为是windows版本系统的错误造成这个问题的,也 ...
- Python列出指定目录下的子目录/文件或者递归列出
1.python只列出当前目录(或者指定目录)下的文件或者目录条目 import os files,dirs=[],[] for item in os.listdir(): if os.path.is ...
随机推荐
- JZOJ5804. 【2018.08.12提高A组模拟】简单的序列
性质:每个位置的前缀和必须大于0,总和=0.以此dp即可. #include <iostream> #include <cstdio> #include <cstring ...
- React 手稿 - Component state
Component state 实例: import React, { PureComponent } from 'react'; export default class extends PureC ...
- maven引入jsp相关依赖
<!--引入Servlet开始--> <dependency> <groupId>javax.servlet</groupId> <artifac ...
- Hibernate的事务机制
http://www.cnblogs.com/jerryxing/archive/2012/04/24/2468999.html http://www.cnblogs.com/xiaofeilee/p ...
- python:单引号,双引号和三引号
python中字符串可以用单引号括起来,也可以用双引号,这两种方式是等价的需要表示一个字符串对象的话,单引号和双引号没有区别 为什么需要单引号和双引号同时支持,而一般都是”呢? 比如” 双引号’里面有 ...
- 鸟哥Linux私房菜知识点总结3到5章
感觉自己对Linux的理解一直不够,所以近期翻看了一本<鸟哥的Linux私房菜>.这是一本基础的书,万丈高楼平地起,会的不多但能够学.这是我整理的一些知识点,尽管非常基础.希望和大家共同交 ...
- UNIX环境高级编程(5):文件I/O(1)
UNIX系统中的大多数文件I/O仅仅须要用到5个函数:open.read.write.lseek以及close.本章说明的函数常常称为"不带缓冲的I/0",术语不带缓冲指的是每一个 ...
- oracle经常使用函数(2)
1.TRIM([ { { LEADING | TRAILING | BOTH }[ trim_character ]| trim_character} FROM ]trim_source) 函数 參数 ...
- dns tunnel工具地址
- gemm() 与 gesvd() 到矩阵求逆(inverse)(根据 SVD 分解和矩阵乘法求矩阵的逆)
可逆方阵 A 的逆记为,A−1,需满足 AA−1=I. 在 BLAS 的各种实现中,一般都不会直接给出 matrix inverse 的直接实现,其实矩阵(方阵)的逆是可以通过 gemm()和gesv ...