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 StringIO模块实现在内存缓冲区中读写数据
Apr 08 Python
使用Python构建Hopfield网络的教程
Apr 14 Python
Python编程实现控制cmd命令行显示颜色的方法示例
Aug 14 Python
关于反爬虫的一些简单总结
Dec 13 Python
python @property的用法及含义全面解析
Feb 01 Python
Python面向对象基础入门之设置对象属性
Dec 11 Python
在matplotlib的图中设置中文标签的方法
Dec 13 Python
python列表使用实现名字管理系统
Jan 30 Python
Python检测数据类型的方法总结
May 20 Python
用Python实现二叉树、二叉树非递归遍历及绘制的例子
Aug 09 Python
python在OpenCV里实现投影变换效果
Aug 30 Python
python脚本之一键移动自定格式文件方法实例
Sep 02 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
php trim 去除空字符的定义与语法介绍
2010/05/31 PHP
用C/C++扩展你的PHP 为你的php增加功能
2012/09/06 PHP
php连接sftp的作用以及实例代码
2019/09/23 PHP
laravel使用数据库测试注意事项
2020/04/10 PHP
Prototype使用指南之dom.js
2007/01/10 Javascript
JavaScript经典效果集锦
2010/07/06 Javascript
Jquery ajax传递复杂参数给WebService的实现代码
2011/08/08 Javascript
js跨域访问示例(客户端/服务端)
2014/05/19 Javascript
javascipt:filter过滤介绍及使用
2014/09/10 Javascript
javascript实现滑动解锁功能
2014/12/31 Javascript
javascript实现验证IP地址等相关信息代码
2015/05/10 Javascript
JavaScript+html5 canvas制作色彩斑斓的正方形效果
2016/01/27 Javascript
Jquery zTree 树控件异步加载操作
2016/02/25 Javascript
从零学习node.js之搭建http服务器(二)
2017/02/21 Javascript
jquery插件ContextMenu设置右键菜单
2017/03/13 Javascript
jQuery插件FusionCharts绘制的2D帕累托图效果示例【附demo源码】
2017/03/28 jQuery
bootstrap-table组合表头的实现方法
2017/09/07 Javascript
基于Vue框架vux组件库实现上拉刷新功能
2017/11/28 Javascript
深入浅析vue组件间事件传递
2017/12/29 Javascript
webpack external模块的具体使用
2018/03/10 Javascript
MVVM 双向绑定的实现代码
2018/06/21 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
Cocos2d实现刮刮卡效果
2018/12/20 Javascript
js时间转换毫秒的实例代码
2019/08/21 Javascript
Vue props中Object和Array设置默认值操作
2020/07/30 Javascript
[01:51]2014DOTA2国际邀请赛 这个赛场没有失败者VGTi5再见
2014/07/23 DOTA
python封装对象实现时间效果
2020/04/23 Python
详解Django的model查询操作与查询性能优化
2018/10/16 Python
大学生个人简历自我评价
2013/11/16 职场文书
党校培训思想汇报
2014/01/03 职场文书
人事档案接收函
2014/01/12 职场文书
科技开发中心办公室主任岗位责任制
2014/02/10 职场文书
金融学专业大学生职业生涯规划
2014/03/07 职场文书
劲霸男装广告词改编版
2014/03/21 职场文书
2015教师节师德演讲稿
2015/03/19 职场文书
mysql 体系结构和存储引擎介绍
2022/05/06 MySQL