返回顶部

收藏

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

更多
#!/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

标签:xcopy,linux,python

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. linux@linux.cn (linu 发表 2016-08-19 09:24:00 Linux 平台下 Python 脚本编程入门(二)
  2. cold 发表 2012-04-13 08:39:00 使用Python进行web开发
  3. youngsterxyf 发表 2013-06-17 16:00:00 搭建测试服务器(源码编译方式)
  4. tst 发表 2015-10-24 16:34:17 reGeorg内网渗透urllib3安装
  5. admin 发表 2014-03-12 06:25:55 用 supervisord 管理进程
  6. admin 发表 2015-12-01 10:53:00 glibc getaddrinfo BUG导致Python脚本卡死
  7. 小马 发表 2015-02-13 07:26:35 IP归属地查询步伐
  8. 博主 发表 2017-09-22 14:54:39 技巧收集-M1709
  9. 八牛 发表 2013-09-09 15:04:36 python如何使脚本以daemon方式运行
  10. Kay Zheng 发表 2015-06-26 01:37:00 GNU Linker 和 RPATH
  11. cold 发表 2013-02-05 08:06:00 使用更加高效的epoll作为pyxmpp2的主循环
  12. welpher 发表 2011-10-26 03:26:42 CentOS5.5下安装python2.6

发表评论