您好,欢迎来到汇意旅游网。
搜索
您的当前位置:首页python实现linux下使用xcopy的方法

python实现linux下使用xcopy的方法

来源:汇意旅游网

本文实例讲述了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, 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程序设计有所帮助。

Copyright © 2019- hids.cn 版权所有 赣ICP备2024042780号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务