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 相关文章推荐
PHP webshell检查工具 python实现代码
Sep 15 Python
Python中Collection的使用小技巧
Aug 18 Python
python生成日历实例解析
Aug 21 Python
以911新闻为例演示Python实现数据可视化的教程
Apr 23 Python
python 调用win32pai 操作cmd的方法
May 28 Python
使用Python微信库itchat获得好友和群组已撤回的消息
Jun 24 Python
弄懂这56个Python使用技巧(轻松掌握Python高效开发)
Sep 18 Python
python实现树的深度优先遍历与广度优先遍历详解
Oct 26 Python
python socket 聊天室实例代码详解
Nov 14 Python
详解pycharm连接不上mysql数据库的解决办法
Jan 10 Python
Pytest如何使用skip跳过执行测试
Aug 13 Python
python UDF 实现对csv批量md5加密操作
Jan 01 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的网址
2006/11/25 PHP
php IP及IP段进行访问限制的代码
2008/12/17 PHP
php的一些小问题
2010/07/03 PHP
匹配csdn用户数据库与官方用户的重合度并将重叠部分的用户筛选出来
2011/12/25 PHP
PHP 之Section与Cookie使用总结
2012/09/14 PHP
PHP字符串的编码问题的详细介绍
2013/04/27 PHP
php开发工具有哪五款
2015/11/09 PHP
php根据命令行参数生成配置文件详解
2019/03/15 PHP
关于jQuery中的end()使用方法
2011/07/10 Javascript
javascript中xml操作实现代码
2011/11/21 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
node.js中的fs.mkdirSync方法使用说明
2014/12/17 Javascript
JavaScript操作Cookie方法实例分析
2015/05/27 Javascript
基于javascript实现的快速排序
2016/12/02 Javascript
socket.io学习教程之基本应用(二)
2017/04/29 Javascript
vue iview组件表格 render函数的使用方法详解
2018/03/15 Javascript
Angular开发实践之服务端渲染
2018/03/29 Javascript
javascript中关于类型判断的一些疑惑小结
2018/10/14 Javascript
antd配置config-overrides.js文件的操作
2020/10/31 Javascript
JS+JQuery实现无缝连接轮播图
2020/12/30 jQuery
[00:33]2016完美“圣”典风云人物:BurNIng宣传片
2016/12/10 DOTA
python实现DES加密解密方法实例详解
2015/06/30 Python
Python中list列表的一些进阶使用方法介绍
2015/08/15 Python
详解Python的Django框架中manage命令的使用与扩展
2016/04/11 Python
使用Django Form解决表单数据无法动态刷新的两种方法
2017/07/14 Python
zookeeper python接口实例详解
2018/01/18 Python
numpy实现合并多维矩阵、list的扩展方法
2018/05/08 Python
shell程序中如何注释
2012/02/17 面试题
留学推荐信怎么写
2014/01/25 职场文书
志愿者服务感言
2014/02/27 职场文书
老干部工作先进集体事迹材料
2014/05/21 职场文书
2015年十一国庆节演讲稿
2015/03/20 职场文书
小学教研工作总结2015
2015/05/13 职场文书
iPhone13 Pro外观确定,升级4800万镜头,4月20日发新品
2021/04/15 数码科技
css3属性选择器 “~”(波浪号) “,”(逗号) “+”(加号)和 “>”(大于号)
2022/04/19 HTML / CSS
mysql幻读详解实例以及解决办法
2022/06/16 MySQL