首页 > 编程 > Python > 正文

python实现linux下使用xcopy的方法

2020-02-23 01:38:13
字体:
来源:转载
供稿:网友

本文实例讲述了python实现linux下使用xcopy的方法。分享给大家供大家参考。具体如下:

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

#!/usr/bin/python# -*- coding: UTF-8 -*-"""xcopy for Linux...Use:______________________________________________________________________________import sys, ossys.path.insert(0,r"/path/to/LinuxXCopy")from LinuxXCopy import XCopyfilters = ["*.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, fnmatchclass 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程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表