python shutil模块简单介绍
简介

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

shutil 模块方法:

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

创建压缩文件(shutil.make_archive)

# cat shutil_test01.py
#!/usr/bin/env python
# -*- conding:utf-8 -*- from shutil import make_archive
import os archive_name = os.path.expanduser(os.path.join('~', 'myarchive'))
root_dir = os.path.expanduser(os.path.join('~', '.ssh'))
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. 时间序列分析工具箱——sweep

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/kMD8d5R/article/details/81977856 作者:徐瑞龙.量化分析师,R语言中文 ...

  2. ros 运行rviz时出现 QXcbConnection: XCB error: 148 错误 解决方法

    出现上述问题的原因: 1.由于使用了nvc远程控制下位机: 2.rviz是一个基于opengl开发的图形插件,需要使用理论的屏幕参数(thetis' screen),由于使用了teamviewer会导 ...

  3. c# 文件或者文件夹改名的最简单方法

    使用cmd命令 ren Process.Start( "cmd", "/C " + "ren f:\\first c code.txt zhou.tx ...

  4. [py]py3/pip/virtualenv/mysql环境安装

    Traceback (most recent call last):是什么意思? 追踪(最后调用) pip.ini添加 https://www.cnblogs.com/lsdb/p/9188204.h ...

  5. 116A

    #include <stdio.h> int main() { int n; int a1,a2; int min=0; int cap=0; scanf("%d",& ...

  6. Marathon自动扩缩容(marathon-lb-autoscale)

    我们在服务里面创建如下的应用(以下是创建完复制过来的json): { "id": "/nginxtest", "cmd": null, &q ...

  7. 用v-if 来给不同筛选出来的todo添加不同的按钮

    凡是数据里面有属性a为2的 我就给它放1,2,3   3个按钮 ,有属性为3的就没得按钮 ,属性a为1的 就给它 13两个按钮 效果如下:

  8. js图的数据结构处理---迪杰斯特拉算法

    /*//1.确定数据结构, mapf[i][j] 为点i到点j的距离 [ Infinity 2 5 Infinity Infinity Infinity Infinity 2 6 Infinity I ...

  9. (转载)Spring定时任务的几种实现

    spring框架定时任务 一.分类 从实现的技术上来分类,目前主要有三种技术(或者说有三种产品): Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerT ...

  10. Selenium基础知识(十)截屏

    自动化测试过程中,经常会用截图的方式,更直观的显示展示错误信息:selenium截图的三种方式: driver.get_screenshot_as_file(r'd:\selenium.png') # ...