python_day6 shutil模块
hutil.copyfileobj(fsrc, fdst[, length])
将文件内容拷贝到另一个文件中
1 import shutil 2 3 shutil.copyfileobj(open('old.xml','r'), open('new.xml', 'w'))
shutil.copyfile(src, dst)
拷贝文件
1 shutil.copyfile('f1.log', 'f2.log') #目标文件无需存在
shutil.copymode(src, dst)
仅拷贝权限。内容、组、用户均不变
1 shutil.copymode('f1.log', 'f2.log') #目标文件必须存在
shutil.copystat(src, dst)
仅拷贝状态的信息,包括:mode bits, atime, mtime, flags
1 shutil.copystat('f1.log', 'f2.log') #目标文件必须存在
shutil.copy(src, dst)
拷贝文件和权限
1 import shutil 2 3 shutil.copy('f1.log', 'f2.log')
shutil.copy2(src, dst)
拷贝文件和状态信息
1 import shutil 2 3 shutil.copy2('f1.log', 'f2.log')
shutil.ignore_patterns(*patterns)
shutil.copytree(src, dst, symlinks=False, ignore=None)
递归的去拷贝文件夹
1 import shutil 2 3 shutil.copytree('folder1', 'folder2', ignore=shutil.ignore_patterns('*.pyc', 'tmp*')) #目标目录不能存在,注意对folder2目录父级目录要有可写权限,ignore的意思是排除
import shutilshutil.copytree('f1', 'f2', symlinks=True, ignore=shutil.ignore_patterns('*.pyc', 'tmp*'))''' 通常的拷贝都把软连接拷贝成硬链接,即对待软连接来说,创建新的文件 '''
shutil.rmtree(path[, ignore_errors[, onerror]])
递归的去删除文件
1 import shutil 2 3 shutil.rmtree('folder1')
shutil.move(src, dst)
递归的去移动文件,它类似mv命令,其实就是重命名。
1 import shutil 2 3 shutil.move('folder1', 'folder3')
shutil.make_archive(base_name, format,...)
创建压缩包并返回文件路径,例如:zip、tar
创建压缩包并返回文件路径,例如:zip、tar
- base_name: 压缩包的文件名,也可以是压缩包的路径。只是文件名时,则保存至当前目录,否则保存至指定路径,
如 data_bak =>保存至当前路径
如:/tmp/data_bak =>保存至/tmp/ - format: 压缩包种类,“zip”, “tar”, “bztar”,“gztar”
- root_dir: 要压缩的文件夹路径(默认当前目录)
- owner: 用户,默认当前用户
- group: 组,默认当前组
- logger: 用于记录日志,通常是logging.Logger对象
1 #将 /data 下的文件打包放置当前程序目录 2 import shutil 3 ret = shutil.make_archive("data_bak", 'gztar', root_dir='/data') 4 5 6 #将 /data下的文件打包放置 /tmp/目录 7 import shutil 8 ret = shutil.make_archive("/tmp/data_bak", 'gztar', root_dir='/data')
shutil 对压缩包的处理是调用 ZipFile 和 TarFile 两个模块来进行的,详细:
import zipfile# 压缩 z = zipfile.ZipFile('laxi.zip', 'w') z.write('a.log') z.write('data.data') z.close()# 解压 z = zipfile.ZipFile('laxi.zip', 'r') z.extractall(path='.') z.close()
import tarfile
# 压缩
>>> t=tarfile.open('/tmp/egon.tar','w')
>>> t.add('/test1/a.py',arcname='a.bak')
>>> t.add('/test1/b.py',arcname='b.bak')
>>> t.close()
# 解压
>>> t=tarfile.open('/tmp/egon.tar','r')
>>> t.extractall('/egon')
>>> t.close()
tarfile压缩解压缩
转载于:https://www.cnblogs.com/onda/p/6950369.html
python_day6 shutil模块相关推荐
- Python中os和shutil模块实用方法集锦
Python中os和shutil模块实用方法集锦 类型:转载 时间:2014-05-13 这篇文章主要介绍了Python中os和shutil模块实用方法集锦,需要的朋友可以参考下 复制代码代码如下: ...
- python中shutil模块_python文件、文件夹、压缩包处理模块-shutil模块-阿里云开发者社区...
shutil模块 高级的文件.文件夹.压缩包 处理模块 本节内容基本在linux下python交互环境实现 复制移动文件.文件夹 将文件内容拷贝到另一个文件中,可以部分内容 格式如下: ``` shu ...
- python使用os和shutil模块进行文件创建,删除,移动,复制,重命名
python使用os和shutil模块进行文件创建,删除,移动,复制,重命名 文章目录: 1 os模块的使用 1.1 os不带path 1.1.1 os.sep 属性:返回系统路径分隔符 1.1.2 ...
- python中shutil模块的用法_python中的os,shutil模块的定义以及用法
#os 模块 os.sep 可以取代操作系统特定的路径分隔符.windows下为'\\'os.name 字符串指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix用户 ...
- python的shutil模块是内置的_Python之shutil模块11个常用函数详解,python内置函数是什么...
Python之shutil模块11个常用函数详解,python内置函数是什么 shutil 是 Python 中的高级文件操作模块,与os模块形成互补的关系,os主要提供了文件或文件夹的新建.删除.查 ...
- 【Python入门】Python之shutil模块11个常用函数详解
shutil 是 Python 中的高级文件操作模块,与os模块形成互补的关系,os主要提供了文件或文件夹的新建.删除.查看等方法,还提供了对文件以及目录的路径操作.shutil模块提供了移动.复制. ...
- python创建模块文件夹_python文件、文件夹、压缩包处理模块-shutil模块
shutil模块 高级的文件.文件夹.压缩包 处理模块 本节内容基本在linux下python交互环境实现 复制移动文件.文件夹 将文件内容拷贝到另一个文件中,可以部分内容 格式如下: ``` shu ...
- shutil模块,为什么说它是os模块的兄弟模块?
本文大纲 os模块是Python标准库中一个重要的模块,里面提供了对目录和文件的一般常用操作.而Python另外一个标准库--shutil模块,它作为os模块的补充,提供了复制.移动.删除.压缩.解压 ...
- Python第二十天 shutil 模块 zipfile tarfile 模块
Python第二十天 shutil 模块 zipfile tarfile 模块 os文件的操作还应该包含移动 复制 打包 压缩 解压等操作,这些os模块都没有提供 shutil 模块 shu ...
最新文章
- 基于FPGA实现的MobileNet V1,FPGA深度学习加速器设计 CNN Accelerators based on FPGAs
- 服务器文件后缀都加了re,已解决: Re: 修改了备份服务器客户端的别名之后所有的备份都出错了 - Dell Community...
- jquery遍历json的几种方法
- solr6 java_Solr6 快速入门教程
- 面试也需要刷题?你至少需要知道这些……
- 【Python入门】for循环的易错点
- GNU make使用(二)
- 奇妙的算法(2)—— 求平方根
- C2P工业云进销存管理有什么优势?
- 如何在Mac电脑上调整日期和时间?如何高效管理时间?
- 2022年重庆医院三基考试心血管系统疾病多选练习题及答案
- WebRTC系列-网络传输之IceConfig及stunPing失败处理
- 索尼笔记本E系列,关闭触摸板
- IP地址测试用例编写
- 苹果 CEO 库克:我每天晚上 9 点半睡觉,凌晨 4 点起床,希望员工重返线下工作...
- Highcharts插件常用配置
- 费马小定理+插板法 - Sum(HDU4704)
- pycharm能不能编写Java_使用Pycharm编写第一个Python程序
- CentOS 7 关闭 swap 分区
- 吉林银行2021年上半年经营成果丰硕
热门文章
- 非看不可!飞猪技术专家教你在家高效办公!
- 如何高效排查系统故障?一分钱引发的系统设计“踩坑”案例
- golang mysql大量写入_Golang 实现分片读取http超大文件流和并发控制
- python数据科学讲解_数据科学的概念-Python数据科学技术详解与商业项目实战精讲 - Python学习网...
- 资深美术分享:游戏开发如何确定画风?
- chrome 主进程cpu占用50%怎么办?
- CentOS下载及版本选择
- eclipse集成processing、PApplet、proclipsing 问题
- 微软给程序代码加的css效果
- 2.1 js 基础--select深入