python实现linux下使用xcopy的方法
本文实例讲述了python实现linux下使用xcopy的方法。分享给大家供大家参考。具体如下:
这个python函数模仿windows下的xcopy命令编写,可以用在linux下
#!/usr/bin/python #-*-coding:UTF-8-*- """ xcopyforLinux... Use: ______________________________________________________________________________ importsys,os sys.path.insert(0,r"/path/to/LinuxXCopy") fromLinuxXCopyimportXCopy filters=["*.py"] xc=XCopy(os.getcwd(),"/tmp/test",filters) ______________________________________________________________________________ """ __author__="JensDiemer" __license__="""GNUGeneralPublicLicensev2orabove- http://www.opensource.org/licenses/gpl-license.php""" __url__="http://www.jensdiemer.de" __info__="" __version__="0.1" __history__=""" v0.1 -ersteVersion """ importos,shutil,fnmatch classXCopy: def__init__(self,src,dst,filters=[]): self.filters=filters self.copytree(src,dst) defcopytree(self,src,dst): """ Basedinshutil.copytree() """ names=os.listdir(src) ifnotos.path.isdir(dst): os.makedirs(dst) errors=[] fornameinnames: srcname=os.path.join(src,name) dstname=os.path.join(dst,name) ifos.path.isdir(srcname): self.copytree(srcname,dstname) elifos.path.isfile(srcname): ifself.filterName(name): print"copy:",name,dstname shutil.copy2(srcname,dstname) shutil.copystat(src,dst) deffilterName(self,fileName): forfilterinself.filters: iffnmatch.fnmatch(fileName,filter): returnTrue returnFalse
希望本文所述对大家的Python程序设计有所帮助。