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实现比较两段文本不同之处的方法
May 30 Python
深入理解Python中字典的键的使用
Aug 19 Python
Python3简单实例计算同花的概率代码
Dec 06 Python
python如何通过twisted实现数据库异步插入
Mar 20 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
Jun 22 Python
python 统计一个列表当中的每一个元素出现了多少次的方法
Nov 14 Python
用Python读取几十万行文本数据
Dec 24 Python
python实现名片管理系统项目
Apr 26 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
Jul 22 Python
python数据化运营的重要意义
Nov 25 Python
python随机生成库faker库api实例详解
Nov 28 Python
Python参数传递对象的引用原理解析
May 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
thinkPHP3.2.3结合Laypage实现的分页功能示例
2018/05/28 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
javascript之函数直接量(function(){})()
2007/06/29 Javascript
javascript Onunload与Onbeforeunload使用小结
2009/12/31 Javascript
js类型检查实现代码
2010/10/29 Javascript
jQuery 事件的命名空间简单了解
2013/11/22 Javascript
jquery重复提交请求的原因浅析
2014/05/23 Javascript
js清空表单数据的两种方式(遍历+reset)
2014/07/18 Javascript
判断字符串的长度(优化版)中文占两个字符
2014/10/30 Javascript
JS+CSS实现弹出全屏灰黑色透明遮罩效果的方法
2014/12/20 Javascript
JavaScript面向对象的实现方法小结
2015/04/14 Javascript
JavaScript获取function所有参数名的方法
2015/10/30 Javascript
实现div滚动条默认最底部以及默认最右边的示例代码
2017/11/15 Javascript
react实现菜单权限控制的方法
2017/12/11 Javascript
javascript中this的用法实践分析
2019/07/29 Javascript
JS实现的碰撞检测与周期移动完整示例
2019/09/02 Javascript
layui点击左侧导航栏,实现不刷新整个页面,只刷新局部的方法
2019/09/25 Javascript
python 获取页面表格数据存放到csv中的方法
2018/12/26 Python
PYTHON EVAL的用法及注意事项解析
2019/09/06 Python
Python使用pymysql模块操作mysql增删改查实例分析
2019/12/19 Python
PyTorch 对应点相乘、矩阵相乘实例
2019/12/27 Python
Python中if有多个条件处理方法
2020/02/26 Python
pycharm 实现光标快速移动到括号外或行尾的操作
2021/02/05 Python
英国最大的电脑零售连锁店集团:PC World
2016/10/10 全球购物
LivingSocial爱尔兰:爱尔兰本地优惠
2018/08/10 全球购物
澳大利亚礼品卡商店:Gift Card Store
2019/06/24 全球购物
法院实习人员自我鉴定
2013/09/26 职场文书
通息工程毕业生自荐信
2013/10/16 职场文书
超市活动计划书
2014/04/24 职场文书
会计学专业自荐信
2014/06/25 职场文书
个人工作表现评价材料
2014/09/21 职场文书
2015年仓管员工作总结
2015/04/21 职场文书
小学见习报告
2015/06/23 职场文书
三严三实·严以用权心得体会
2016/01/12 职场文书
Linux7.6二进制安装Mysql8.0.27详细操作步骤
2021/11/27 MySQL
Go语言怎么使用变长参数函数
2022/07/15 Golang