• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

python编写的linux下使用的xcopy代码

PHP 水墨上仙 2688次浏览 0个评论

这个python函数模仿windows下的xcopy命令编写,可以用在linux下

#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
xcopy for Linux...
Use:
______________________________________________________________________________
import sys, os
sys.path.insert(0,r"/path/to/LinuxXCopy")
from LinuxXCopy import XCopy
filters = ["*.py"]
xc = XCopy(os.getcwd(), "/tmp/test", filters)
______________________________________________________________________________
"""
__author__  = "Jens Diemer"
__license__ = """GNU General Public License v2 or above -
 http://www.opensource.org/licenses/gpl-license.php"""
__url__     = "http://www.jensdiemer.de"
__info__    = ""
__version__="0.1"
__history__="""
v0.1
    - erste Version
"""
import os, shutil, fnmatch
class XCopy:
    def __init__(self, src, dst, filters=[]):
        self.filters = filters
        self.copytree(src, dst)
    def copytree(self, src, dst):
        """
        Based in shutil.copytree()
        """
        names = os.listdir(src)
        if not os.path.isdir(dst):
            os.makedirs(dst)
        errors = []
        for name in names:
            srcname = os.path.join(src, name)
            dstname = os.path.join(dst, name)
            if os.path.isdir(srcname):
                self.copytree(srcname, dstname)
            elif os.path.isfile(srcname):
                if self.filterName(name):
                    print "copy:", name, dstname
                    shutil.copy2(srcname, dstname)
        shutil.copystat(src, dst)
    def filterName(self, fileName):
        for filter in self.filters:
            if fnmatch.fnmatch(fileName, filter):
                return True
        return False


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明python编写的linux下使用的xcopy代码
喜欢 (0)

您必须 登录 才能发表评论!

加载中……