python shutil模块简单介绍
简介

shutil模块提供了大量的文件的高级操作。特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作。

shutil 模块方法:

  1. copy(src, dst)
  2. Copy data and mode bits ("cp src dst") # 复制数据和权限,相对于cp命令
  3. The destination may be a directory. # 目标数据可以为目录
  4. copy2(src, dst)
  5. Copy data and all stat info ("cp -p src dst"). # 拷贝文件和状态信息
  6. The destination may be a directory.
  7. copyfile(src, dst) # 拷贝文件
  8. Copy data from src to dst
  9. copyfileobj(fsrc, fdst, length=16384) # 将文件内容拷贝到另一个文件
  10. copy data from file-like object fsrc to file-like object fdst
  11. copymode(src, dst) # 仅拷贝权限,内容,用户,组不变
  12. Copy mode bits from src to dst
  13. copystat(src, dst) # 仅拷贝状态信息
  14. Copy all stat info (mode bits, atime, mtime, flags) from src to dst
  15. copytree(src, dst, symlinks=False, ignore=None) # 递归复制
  16. Recursively copy a directory tree using copy2().
  17. get_archive_formats() # 返回支持的 压缩格式列表
  18. Returns a list of supported formats for archiving and unarchiving.
  19. Each element of the returned sequence is a tuple (name, description)
  20. ignore_patterns(*patterns) # 相当于copytree
  21. Function that can be used as copytree() ignore parameter.
  22. Patterns is a sequence of glob-style patterns
  23. that are used to exclude files
  24. # 模式是一个序列,用于排除文件glob方式模式
  25. make_archive(base_name, format, root_dir=None, base_dir=None, verbose=0, dry_run=0, owner=None, group=None, logger=None)
  26. Create an archive file (eg. zip or tar). # 创建压缩文件
  27. 参数介绍:
  28. base_name: 压缩包的文件名, 也可以使压缩包的路径.
  29. format: 压缩种类
  30. root_dir: 要压缩的文件夹路径,默认为当前路径
  31. owner: 压缩用户,默认为当前用户
  32. group: 组,默认为当前组
  33. move(src, dst) # 移动文件,相对于Linux的“mv”命令
  34. Recursively move a file or directory to another location. This is
  35. similar to the Unix "mv" command.
  36. register_archive_format(name, function, extra_args=None, description='')
  37. Registers an archive format. # 返回支持的 压缩格式列表
  38. rmtree(path, ignore_errors=False, onerror=None) # 递归删除目录树
  39. Recursively delete a directory tree.
shutil 模块使用简单示例:

创建压缩文件(shutil.make_archive)

  1. # cat shutil_test01.py
  2. #!/usr/bin/env python
  3. # -*- conding:utf-8 -*-
  4. from shutil import make_archive
  5. import os
  6. archive_name = os.path.expanduser(os.path.join('~', 'myarchive'))
  7. root_dir = os.path.expanduser(os.path.join('~', '.ssh'))
  8. make_archive(archive_name, 'gztar', root_dir)

python shutil模块简单介绍的更多相关文章

  1. python paramiko 模块简单介绍

    背景,公司的很多服务包括数据库访问都需要通过跳板机访问,为日常工作及使用带来了麻烦,特别数python直接操作数据更是麻烦了,所以一直想实现python 通过跳板机访问数据库的操作. 首先了解到了 p ...

  2. python numpy 模块简单介绍

    用python自带的list去处理数组效率很低, numpy就诞生了, 它提供了ndarry对象,N-dimensional object, 是存储单一数据类型的多维数组,即所有的元素都是同一种类型. ...

  3. python之pandas简单介绍及使用(一)

    python之pandas简单介绍及使用(一) 一. Pandas简介1.Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据 ...

  4. Python -- Scrapy 框架简单介绍(Scrapy 安装及项目创建)

    Python -- Scrapy 框架简单介绍 最近在学习python 爬虫,先后了解学习urllib.urllib2.requests等,后来发现爬虫也有很多框架,而推荐学习最多就是Scrapy框架 ...

  5. Python+selenium之简单介绍unittest单元测试框架

    Python+selenium之简单介绍unittest单元测试框架 一.unittest简单介绍 unittest支持测试自动化,共享测试用例中的初始化和关闭退出代码,在unittest中最小单元是 ...

  6. python+selenium之简单介绍继承

    python+selenium之简单介绍继承 一.此例简单的介绍一下继承 1.面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过继承机制.继承完全可以理解成类之间的类型和子类型 ...

  7. 【Python】operator 模块简单介绍

    简单介绍几个常用的函数,其他的请参考文档. operator.concat(a, b) **operator.__concat__(a, b)** 对于 a.b序列,返回 a + b(列表合并) -- ...

  8. Python shutil模块

    shutil模块下 copy(复制).rm(删除).move(移动) 常用方法举例. copyfileobj(fsrc, fdst[, length])copyfile(src, dst, *, fo ...

  9. Python shutil模块(目录和文件操作)

    import shutil #导入shutil模块 copyfileobj方法 将类文件对象fsrc的内容复制到类文件对象fdst shutil.copyfileobj(fsrc, fdst[, le ...

随机推荐

  1. 20170803 Airflow自带的API进行GET 和POST动作部分内容

    --1 首先你要有安装好的Airflow 环境并且在配置文件中有启用API 属性 --2 就是GET 和POST 方法的调用了 这里说一下,由于Airflow在网络上的资料比较少,可以从GETHUB中 ...

  2. shell编程awk进阶

    awk操作符 算术操作符:  x+y, x-y, x*y, x/y, x^y, x%y      -x: 转换为负数      +x: 转换为数值 字符串操作符:没有符号的操作符,字符串连接 赋值操作 ...

  3. 004-linux命令-搜索命令find、locate、whereis、which、type

    一.概述 使用linux系统难免会忘记文件所在的位置,可以使用以下命令对系统中的文件进行搜索. 1.1.find 语法:find <指定目录> <指定条件> <指定动作& ...

  4. RN-系列

    8081端口被占用,McAfee Agent关不掉 sudo lsof -n -i4TCP:8081 sudo launchctl list | grep 5693 sudo launchctl re ...

  5. JsonResponse返回中文乱码问题

    class Publish(APIView): def get(self, request): publish_list = models.Publish.objects.all() bs = MyS ...

  6. syslog-ng内容讲解

    一.基础syslog-ng作为syslog的替代工具,可以完全替代syslog的服务,并且通过定义规则,实现更好的过滤功能.系统自带版本: 引用 # rpm -qa|grep syslog-ngsys ...

  7. Python itsdangerous 生成token和验证token

    代码如下 class AuthToken(object): # 用于处理token信息流程: # 1.更加给定的用户信息生成token # 2.保存生成的token,以便于后面验证 # 3.对用户请求 ...

  8. PHP三种访问控制模式(public、protected、private)解析

    参考:https://www.cnblogs.com/chbyl/p/7116591.html public:公有类型 在子类中可以通过self::var调用方法或属性,可以使用parent::met ...

  9. vue的图片路径,和背景图片路径打包后错误解决

    最近在研究vue,老实的按照官网提供的,搭建的了 webpack+vue+vuex+vue-router,,因为是自己搭建的,所以踩了不少坑,一般问题百度都有,这个背景图片的问题,查了很久才解决. 1 ...

  10. Makefile中变量定义中末尾不能有空格

    我在Makefile中添加了 ifndef EMASSDIR EMASSDIR=$(shell emassTop.py)endif 但是emassTop.py)后面不小心加入了空格,造成出现“Make ...