返回顶部
首页 > 资讯 > 后端开发 > Python >rsync多线程备份脚本 --pytho
  • 735
分享到

rsync多线程备份脚本 --pytho

多线程脚本备份 2023-01-31 02:01:32 735人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

闲话少说,脚本奉上,希望对大家有帮助。#!/bin/env python #coding=utf8 import os,sys,time,re,threading now=time.strftime('%Y%m%d') log_02='/

闲话少说,脚本奉上,希望对大家有帮助。

#!/bin/env python
#coding=utf8
import os,sys,time,re,threading

now=time.strftime('%Y%m%d')
log_02='/tmp/tongbu_stats_%s.txt' % (now)

# rsync  -t保持稳健时间细细
#        -z对备份的文件传输中压缩处理
#        -r对子目录进行递归处理
#        -p保持file权限
#        -l保持软连接
dict_cmd={
	'test1':'/usr/bin/rsync -tzrlp --stats /usr/local/src/2 /tmp/linshi',
	'test2':'/usr/bin/rsync -tzrp --stats /usr/local/src/openfire /tmp/linshi0304'
}

def write_title(log_stat):
  file_log=open(log_stat,'a')
  file_log.write('strt_time,end_time,module,Number of files,Number of files transferred,Total file size(byte),Total transferred file size(byte)\n')
  file_log.close()

def write_notes(cmd,log_stat,nam):
  fle=open(log_stat,'a')
  try:
    s_time=time.strftime('%H:%M:%S')
    cmd_put=os.popen(cmd)
    list_tmp=[]
    re_p=re.compile('(Number of files:|Number of files transferred:|Total file size:|Total transferred file size:) (\d+)?')
    for each_line1 in cmd_put:
      for each_line2 in re_p.finditer(each_line1):
        if each_line2 is not None:
          list_tmp.append(each_line2.group(2))
        else:
          pass
    e_time=time.strftime('%H:%M:%S')
    cmd_stat='%s,%s,%s,%s,%s,%s,%s,%s' % (s_time,e_time,nam,list_tmp[0],list_tmp[1],list_tmp[2],list_tmp[3],os.linesep)
    cmd_put.close()
    fle.write(cmd_stat)
  except:
    cmd_stat='%s,%s,%s,%s,%s,%s,%s,%s' % (s_time,e_time,nam,'error','error','error','error',os.linesep)
    fle.write(cmd_stat)
  fle.close()


if __name__=='__main__':
  write_title(log_02)
  threads={}
  for i in dict_cmd:
    t=threading.Thread(target=write_notes,args=(dict_cmd[i],log_02,i))
    print 'exec',i
    threads[i]=t
  for i in dict_cmd:
    threads[i].start()
    time.sleep(10)
    print 'exec',threads[i]
  for i in dict_cmd:
    threads[i].join()


--结束END--

本文标题: rsync多线程备份脚本 --pytho

本文链接: https://lsjlt.com/news/186075.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • rsync多线程备份脚本 --pytho
    闲话少说,脚本奉上,希望对大家有帮助。#!/bin/env python #coding=utf8 import os,sys,time,re,threading now=time.strftime('%Y%m%d') log_02='/...
    99+
    2023-01-31
    多线程 脚本 备份
  • xtrabackup 远程流备份脚本
    1、xbstream 流,本地文件夹可以自己创建,异地文件夹必须存在 innobackupex --host=127.0.0.1  --post=3306 --stream=xbstream  --comp...
    99+
    2024-04-02
  • mysql备份脚本
    在网上看了几个脚本根据网上的稍微修改了下,稍微更准确了点,就是缺少记录日志的功能,还没想好怎么写,后续添加 #!/bin/bash#做大备份数量Backup_Max_Files=20#数据库备份目录WORK...
    99+
    2024-04-02
  • oracle 备份脚本
     #!/bin/shexport ORACLE_BASE=/app/oracle/export ORACLE_HOME=/app/oracle/productexport&nb...
    99+
    2024-04-02
  • rman备份脚本
    #!/bin/bash ################################# # backup oracle database # date: 2019-6-23 ##############...
    99+
    2024-04-02
  • abin 备份脚本
    #!/bin/sh # # 第一次执行它的时候它会检查是否有完全备份,否则先创建一个全库备份# 当你再次运行它的时候,它会根据脚本中的设定来基于之前的全库备份进行增量备份 IN...
    99+
    2024-04-02
  • mysqldump备份脚本
    [root@sq1 /]# cat logic_backup.sh #!/bin/bash CUR_DATE=`date +%Y%m%d`         &...
    99+
    2024-04-02
  • python脚本备份
    #!/usr/bin/python #encodeing:utf-8 import os import time import string #需要备份的目录 source = ['/usr/local/nagios','/var/www/...
    99+
    2023-01-31
    脚本 备份 python
  • Rman备份等级及备份脚本
    Rman备份等级及备份脚本基础知识:Oracle备份等级分为level 0,level 1及level 2;但是level 2并不常用,这里只稍微做下解释,这里,level 0>level 1>...
    99+
    2024-04-02
  • ORCLE RMAN备份脚本
    1、Linux下oracle备份脚本export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=/u01/app/oracle/product/11.2.0/d...
    99+
    2024-04-02
  • oracle rman备份脚本
    日常习惯使用netbackup进行数据库备份,但是经常环境中无netbackup,因此的自己写个脚本,脚本很简单,主要是写费时间,因此贴出来以备后用:全备:cat arch_rman_backup.sh: ...
    99+
    2024-04-02
  • Oracle冷备份脚本
    一、原理 冷备份 数据库在关闭状态下完成所有物理系统文件拷贝的过程,也称脱机备份 适合于非归档模式下,数据库处于一致性状态 步骤 首先在运行的库中得到数据库运行的所有的物理文件位置,然后在...
    99+
    2024-04-02
  • mysql mysqldum备份脚本
    本篇文章主要讲如何使用shell实现mysql全量,增量备份。增量备份在周一-周六凌晨3点,会复制mysql-bin.00000*到指定目录;而全量备份则使用mysqldump将所有的数据库导出,每周日凌晨...
    99+
    2024-04-02
  • python备份mysql脚本
    今天简单的写了个python的mysql备份脚本,其实也不是很难呀。比shell简洁了很多!  开整:  注释都用英文写了,有些英语基础的朋友应该都可以看得懂了!#!/usr/bin/env python #backup the gtsho...
    99+
    2023-01-31
    脚本 备份 python
  • mysql全库备份/增量备份脚本
    http://hongge.blog.51cto.com/ 生产环境中Mysql数据库的备份是周期性重复的操作,所以通常是要编写脚本实现,通过crond计划任务周期性执行备份脚本 mysqldump备份...
    99+
    2024-04-02
  • MySQL多线程备份工具mydumper
    目录 一、mydumper简介 二、mydumper安装 1、yum安装mydumper 2、源码安装mydumper 三、mydumper参数介绍 四、myloader参数介绍 五、使用例子 一、mydumper简介 mydumper...
    99+
    2023-09-08
    mysql linux 服务器
  • shell 备份数据库、代码上线的脚本
    Shell 脚本 Shell 脚本(shell script),是一种为 shell 编写的脚本程序。 业界所说的 shell 通常都是指 shell 脚本,但读者朋友要知道,shell 和 shell script ...
    99+
    2022-06-04
    shell 备份数据库 shell代码上线
  • mysql 分库备份脚本
    #!/bin/bash #Author:heyic.m@gmail.com #按数据库分库备份,可排除指定库 #2016-06-08 create. #2017-02-21 add&nb...
    99+
    2024-04-02
  • 数据库脚本备份
    rem *******************************Code Start*****************************@echo offset "Ymd=%date:~,4%%...
    99+
    2024-04-02
  • rman备份脚本shell版
    1、数据库全备到硬盘[oracle@centos7 scripts]$ cat rman_backup.sh   source /home/ora...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作