加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python实现linux下使用xcopy的方法

发布时间:2020-12-16 22:37:45 所属栏目:Python 来源:网络整理
导读:本篇章节讲解python实现linux下使用xcopy的方法。供大家参考研究。具体如下: 这个python函数模仿windows下的xcopy命令编写,可以用在linux下 #!/usr/bin/python# -*- coding: UTF-8 -*-"""xcopy for Linux...Use:_________________________________

本篇章节讲解python实现linux下使用xcopy的方法。分享给大家供大家参考。具体如下:

这个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,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程序设计有所帮助。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读