Python3中的shutil模块提供了对文件和容器文件的一些高级操作

  shutil.copy(src, dst)

    拷贝文件,src和dst为路径的字符串表示,copy()会复制文件数据和文件权限,但是其他的元数据(如:修改时间)不会保留,如果要保留请用copy2()

  shutil.copyfileobj(fsrc, fdst[, length])

    拷贝文件对象,fsrc和fdst为两个打开的文件对象

  shutil.copyfile(src, dst)

    拷贝文件,src和dst为路径的字符串表示

  shutil.copymode(src, dst)

    仅拷贝文件的权限

  shutil.copystat(src, dst)

    将权限位,最后访问时间,上次修改时间和标志从src复制到dst

  shutil.copytree(src, dst)

    拷贝整个目录树,dst不能存在

  shutil.rmtree(path)

    删除整个目录树

  shutil.move(src, dst)

    移动文件或目录

  shutil.disk_usage(path)

    返回指定路径的磁盘使用情况统计信息,单位为字节

import shutil

du = shutil.disk_usage("E:\\")
print("总大小:%s G" % (round(du.total / 1024 / 1024 / 1024, 2)))
print("已使用:%s G" % (round(du.used / 1024 / 1024 / 1024, 2)))
print("剩余:%s G" % (round(du.free / 1024 / 1024 / 1024, 2)))
print("总大小:%s M" % (round(du.total / 1024 / 1024, 2)))
print("已使用:%s M" % (round(du.used / 1024 / 1024, 2)))
print("剩余:%s M" % (round(du.free / 1024 / 1024, 2)))

  shutil.make_archive(base_name, format, [root_dir])

    创建归档文件并返回其名称

    base_name: 要创建的文件的名称

    format: 归档的格式,支持zip tar batar gztar

    root_dir: 为要归档的目录,默认为当前目录

import shutil

zip_file = shutil.make_archive("E:\\Jet", "zip", root_dir="E:\\Jet Bi")
print(zip_file) # 输出结果: E:\Jet.zip

  shutil.unpack_archive(filename[, extract_dir[, format]])

    分拆解压归档文件
    filename: 归档文件的完整路径

    extract_dir: 解压目标目录,默认为当前目录

    format: 解压格式,默认使用文件的扩展名

import shutil

# 将E:\Jet.zip中的内容解压到F:\Jet目录中
shutil.unpack_archive("E:\\Jet.zip", "F:\\Jet")

  shutil.get_archive_formats()

    返回支持的归档格式

  shutil.get_unpack_formats()

    返回支持分拆的归档格式

    

  

Python3-shutil模块-高级文件操作的更多相关文章

  1. s14 第5天 时间模块 随机模块 String模块 shutil模块(文件操作) 文件压缩(zipfile和tarfile)shelve模块 XML模块 ConfigParser配置文件操作模块 hashlib散列模块 Subprocess模块(调用shell) logging模块 正则表达式模块 r字符串和转译

    时间模块 time datatime time.clock(2.7) time.process_time(3.3) 测量处理器运算时间,不包括sleep时间 time.altzone 返回与UTC时间 ...

  2. Python的高级文件操作(shutil模块)

    Python的高级文件操作(shutil模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果让我们用python的文件处理来进行文件拷贝,想必很多小伙伴的思路是:使用打开2个 ...

  3. python3之shutil高级文件操作

    1.shutil高级文件操作模块 shutil模块提供了大量的文件的高级操作.特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作.对单个文件的操作也可参见os模块. 2.shutil模块的拷 ...

  4. python模块之shutil高级文件操作

    简介 shutil模块提供了大量的文件的高级操作.特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作.对单个文件的操作也可参见os模块. 注意即便是更高级别的文件复制函数(shutil.co ...

  5. ansible笔记(5):常用模块之文件操作(二)

    ansible笔记():常用模块之文件操作(二) 文件操作类模块 find模块 find模块可以帮助我们在远程主机中查找符合条件的文件,就像find命令一样. 此处我们介绍一些find模块的常用参数, ...

  6. 第3章 文件I/O(7)_高级文件操作:存储映射

    8. 高级文件操作:存储映射 (1)概念: 存储映射是一个磁盘文件与存储空间的一个缓存相映射,对缓存数据的读写就相应的完成了文件的读写. (2)mmap和munmap函数 头文件 #include&l ...

  7. 第3章 文件I/O(6)_高级文件操作:文件锁

    7. 高级文件操作:文件锁 (1)文件锁分类 分类依据 类型 说明 按功能分 共享读锁 文件描述符必须读打开 一个进程上了读锁,共它进程也可以上读锁进行读取 独占写锁 文件描述符必须写打开 一个进程上 ...

  8. Python3.x:open()文件操作

    Python3.x:open()文件操作 open/文件操作: #open(路径+文件名,读写模式) #读写模式:r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件.常用模式 f=ope ...

  9. 02-Node.js学习笔记-系统模块fs文件操作

    2.1.什么是系统模块 Node 运行环境提供的API,因为这些API都是以模块化的方式进行开发的,所有我们又称Node运行环境提供的API为系统模块 3.1系统模块fs文件操作 //f :file ...

随机推荐

  1. node_modules内容太大导致webstrom非常卡

    选中一个文件夹,例如node_modules,点击右键->mark directory as ->excluded,这样就可以把这个文件标记并排除出来,使webstorm不会扫描这个文件下 ...

  2. websocket ddos检测脚本

    from websocket import create_connection while(1): ws = create_connection('wss://ha-cmim.cmcc-cs.cn:1 ...

  3. 爱奇艺|B站|优酷|腾讯视频高清无水印视频下载方法(软件工具教程)

    导读:经常在大型视频网站平台上看到一些很价值和视频,希望能高清无水印下载到本地学习观看,今天小程序定制开发代码哥DaiMaGe6给大家分享一招免费下载全网高清无水印视频的方法. 高清无水印视频下载工具 ...

  4. Bootstrap解决页面缩小变形的办法

    bootstrap布局是应用得很广泛的一种网页布局方法,例如:我们用一种中间内容很流行的布局分布:3-6-3式布局.代码如下 <style type="text/css"&g ...

  5. Java并发编程 (八) J.U.C组件拓展

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.J.U.C-FutureTask-1 FutureTask组件,该组件是JUC中的.但该组件不是 A ...

  6. windows FTP工具,Windows FTP工具下载!

    IIS7服务器管理工具能够作为FTP的客户端,进行FTP的命令操作,可在客户端,下载,安装FTP软件! 同时,它也可以作为VNC的客户端,进行VNC的命令操作!它能够批量连接Windows和Linux ...

  7. Java实现 LeetCode 289 生命游戏

    289. 生命游戏 根据百度百科,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在1970年发明的细胞自动机. 给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞.每个细胞具有 ...

  8. Java实现最大连续子数组和

    1 问题描述 给定一个整数数组,数组里可能有正数.负数和零.数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和.求所有子数组的和的最大值.例如,如果输入的数组为{1,-2,3,10,-4, ...

  9. 【Spring注解驱动开发】组件注册-@ComponentScan-自动扫描组件&指定扫描规则

    写在前面 在实际项目中,我们更多的是使用Spring的包扫描功能对项目中的包进行扫描,凡是在指定的包或子包中的类上标注了@Repository.@Service.@Controller.@Compon ...

  10. 权限系统设计(0):权限系统设计基本概念改需-MAC/RBAC引子

    此篇主要对权限系统设计所涉的一些专业术语重点梳理.从我们windows的文件系统 自主访问控制 到基于角色访问控制. 权限设计基本术语 对后面会用到的词汇做一个简要说明 什么是权限(许可) 权限(Pr ...