python实现linux下使用xcopy的方法


Posted in Python onJune 28, 2015

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

Python 相关文章推荐
Python中for循环详解
Jan 17 Python
Python判断变量是否已经定义的方法
Aug 18 Python
用Python代码来解图片迷宫的方法整理
Apr 02 Python
常见的在Python中实现单例模式的三种方法
Apr 08 Python
Python实现将罗马数字转换成普通阿拉伯数字的方法
Apr 19 Python
PHP实现发送和接收JSON请求
Jun 07 Python
利用Python如何生成便签图片详解
Jul 09 Python
10 分钟快速入门 Python3的教程
Jan 29 Python
详解python opencv、scikit-image和PIL图像处理库比较
Dec 26 Python
Python项目跨域问题解决方案
Jun 22 Python
python里glob模块知识点总结
Jan 05 Python
python中的class_static的@classmethod的巧妙用法
Jun 22 Python
自动化Nginx服务器的反向代理的配置方法
Jun 28 #Python
python读取TXT到数组及列表去重后按原来顺序排序的方法
Jun 26 #Python
在Python中使用zlib模块进行数据压缩的教程
Jun 26 #Python
Python中的zipfile模块使用详解
Jun 25 #Python
Python实现保证只能运行一个脚本实例
Jun 24 #Python
Python中的默认参数详解
Jun 24 #Python
Python中的下划线详解
Jun 24 #Python
You might like
写一个用户在线显示的程序
2006/10/09 PHP
PHP中用接口、抽象类、普通基类实现“面向接口编程”与“耦合方法”简述
2011/03/23 PHP
php 代码优化之经典示例
2011/03/24 PHP
php构造函数与析构函数
2016/04/23 PHP
微信随机生成红包金额算法php版
2016/07/21 PHP
PHP ADODB生成下拉列表框功能示例
2018/05/29 PHP
php设计模式之代理模式分析【星际争霸游戏案例】
2020/03/23 PHP
jquery.cookie.js 操作cookie实现记住密码功能的实现代码
2011/04/27 Javascript
jQuery + Flex 通过拖拽方式动态改变图片的代码
2011/08/03 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
js事件监听机制(事件捕获)总结
2014/08/08 Javascript
浅谈Javascript 数组与字典
2015/01/29 Javascript
javascript实现获取服务器时间
2015/05/19 Javascript
jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
2016/01/18 Javascript
javascript如何创建对象
2016/08/29 Javascript
AngularJS中的DOM操作用法分析
2016/11/04 Javascript
基于jQuery Easyui实现登陆框界面
2017/07/10 jQuery
ES6函数和数组用法实例分析
2020/05/23 Javascript
解决vue bus.$emit触发第一次$on监听不到问题
2020/07/28 Javascript
解决vue项目运行提示Warnings while compiling.警告的问题
2020/09/18 Javascript
微信小程序抽奖组件的使用步骤
2021/01/11 Javascript
javascript实现下拉菜单效果
2021/02/09 Javascript
Python内置函数dir详解
2015/04/14 Python
详解Python网络爬虫功能的基本写法
2016/01/28 Python
python获取多线程及子线程的返回值
2017/11/15 Python
python跳过第一行快速读取文件内容的实例
2018/07/12 Python
Python使用paramiko操作linux的方法讲解
2019/02/25 Python
Python 静态方法和类方法实例分析
2019/11/21 Python
通过实例解析Python return运行原理
2020/03/04 Python
Dyson加拿大官方网站:购买戴森吸尘器,风扇,冷热器及配件
2016/10/26 全球购物
英国的潮牌鞋履服饰商店:size?
2019/03/26 全球购物
《小石潭记》教学反思
2014/02/13 职场文书
小学评语大全
2014/04/22 职场文书
普通党员四风问题对照检查材料
2014/09/27 职场文书
高考升学宴答谢词
2015/01/20 职场文书
感恩教育主题班会
2015/08/12 职场文书