#!/usr/bin/python # -*- coding: utf-8 -*- import os import re import tarfile import datetime import pexpect basedir='/data/bak/' #文件夹 iplist=['']# IP地址 def get_list(txt_file): ret_list = [] fin = open(txt_file,'r') for line in fin: if (re.match('^\\s*$',line)): #跳过是空白的行 continue else: line = line.lstrip() line = line.rstrip() #将回车(\n)去掉 ret_list.append(line) #print('debug info of get_list :\n',ret_list) return ret_list def copy_svn(filelist): #这个函数主要是完成dump name= [] name=os.path.split(filelist) now = datetime.datetime.now() filename = now.strftime(basedir+iplist[0] +name[-1]+ '_%Y%m%d_%H%M%S.dump') os.system('svnadmin dump ' + filelist +' > '+filename ) tarname = now.strftime(basedir+iplist[0]+'_SVNDump_' +name[-1]+ '_%Y%m%d_%H%M%S.tar.gz') #print tarname tar = tarfile.open(tarname, 'w|gz') tar.add(filename) tar.close() scp = pexpect.spawn('scp -r ' + tarname + ' root@IP:/data/databak/FilesBack/') scp.expect('.ssword:*') scp.sendline('密码') scp.expect(pexpect.EOF, timeout=None) olddate = (now - datetime.timedelta(5)).strftime("%Y%m%d") print olddate for i in os.listdir(basedir): file = re.search(r'\w*[_](\d{8})[_]\d{6}.(tar.gz|dump)', i) #print i, file if file and olddate>=file.group(1): os.remove(basedir + file.group(0)) print 'del:', file.group(0) filelog=open("/data/bak/bak.log", "a") filelog.write("============DATE:%s============= \n"% now.strftime("%Y%m%d")) filelog.write("del file:%s \n" % (basedir+file.group(0) )) filelog.write("============DATE:%s============= \n"% now.strftime("%Y%m%d")) filelog.close() def copy_files(txt_file): geted_list = get_list(txt_file) for file in geted_list: copy_svn(file) if __name__ == '__main__': copy_files('/data/bak/filebak.txt') print '='*20,'\ncopy_OKOKOK\n','='*20 #!/usr/bin/python # -*- coding: utf-8 -*- import os import re import tarfile import datetime import pexpect basedir='/data/bak/' #文件夹 iplist=['']# IP地址 def get_list(txt_file): ret_list = [] fin = open(txt_file,'r') for line in fin: if (re.match('^\\s*$',line)): #跳过是空白的行 continue else: line = line.lstrip() line = line.rstrip() #将回车(\n)去掉 ret_list.append(line) #print('debug info of get_list :\n',ret_list) return ret_list def copy_svn(filelist): #这个函数主要是完成dump name= [] name=os.path.split(filelist) now = datetime.datetime.now() filename = now.strftime(basedir+iplist[0] +name[-1]+ '_%Y%m%d_%H%M%S.dump') os.system('svnadmin dump ' + filelist +' > '+filename ) tarname = now.strftime(basedir+iplist[0]+'_SVNDump_' +name[-1]+ '_%Y%m%d_%H%M%S.tar.gz') #print tarname tar = tarfile.open(tarname, 'w|gz') tar.add(filename) tar.close() scp = pexpect.spawn('scp -r ' + tarname + ' root@IP:/data/databak/FilesBack/') scp.expect('.ssword:*') scp.sendline('密码') scp.expect(pexpect.EOF, timeout=None) olddate = (now - datetime.timedelta(5)).strftime("%Y%m%d") print olddate for i in os.listdir(basedir): file = re.search(r'\w*[_](\d{8})[_]\d{6}.(tar.gz|dump)', i) #print i, file if file and olddate>=file.group(1): os.remove(basedir + file.group(0)) print 'del:', file.group(0) filelog=open("/data/bak/bak.log", "a") filelog.write("============DATE:%s============= \n"% now.strftime("%Y%m%d")) filelog.write("del file:%s \n" % (basedir+file.group(0) )) filelog.write("============DATE:%s============= \n"% now.strftime("%Y%m%d")) filelog.close() def copy_files(txt_file): geted_list = get_list(txt_file) for file in geted_list: copy_svn(file) if __name__ == '__main__': copy_files('/data/bak/filebak.txt') print '='*20,'\ncopy_OKOKOK\n','='*20

Python在web开发、数据科学、机器学习、自动化和脚本编写等领域有广泛应用。1)在web开发中,Django和Flask框架简化了开发过程。2)数据科学和机器学习领域,NumPy、Pandas、Scikit-learn和TensorFlow库提供了强大支持。3)自动化和脚本编写方面,Python适用于自动化测试和系统管理等任务。

两小时内可以学到Python的基础知识。1.学习变量和数据类型,2.掌握控制结构如if语句和循环,3.了解函数的定义和使用。这些将帮助你开始编写简单的Python程序。

如何在10小时内教计算机小白编程基础?如果你只有10个小时来教计算机小白一些编程知识,你会选择教些什么�...

使用FiddlerEverywhere进行中间人读取时如何避免被检测到当你使用FiddlerEverywhere...

Python3.6环境下加载Pickle文件报错:ModuleNotFoundError:Nomodulenamed...

如何解决jieba分词在景区评论分析中的问题?当我们在进行景区评论分析时,往往会使用jieba分词工具来处理文�...

如何使用正则表达式匹配到第一个闭合标签就停止?在处理HTML或其他标记语言时,常常需要使用正则表达式来�...

攻克Investing.com的反爬虫策略许多人尝试爬取Investing.com(https://cn.investing.com/news/latest-news)的新闻数据时,常常�...


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SublimeText3 Linux新版
SublimeText3 Linux最新版

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3汉化版
中文版,非常好用

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。