高级的文件、文件夹、压缩包处理模块
补充:
1、shutil.move(src, dst)递归的去移动文件
2、shutil.make_archive(base_name, format,...)创建压缩包并返回文件路径,例如:zip、tar
base_name: 压缩包的文件名,也可以是压缩包的路径。只是文件名时,则保存至当前目录,否则保存至指定路径,
如:www =>保存至当前路径
如:/Users/wupeiqi/www =>保存至/Users/wupeiqi/format:压缩包种类,“zip”, “tar”, “bztar”,“gztar”
root_dir:要压缩的文件夹路径(默认当前目录)
owner:用户,默认当前用户
group:组,默认当前组
logger:用于记录日志,通常是logging.Logger对象
1 2 3 4 5 6 7 8 9 | import os import shutil with open ( 'access.txt' , 'r' ) as f, open ( 'acc' , 'w' ) as f1: #将access.txt内容拷贝到acc中 shutil.copyfileobj(f,f1) shutil.copyfile( 'acc' , 'acc.bak' ) #拷贝文件 print (os.stat( 'acc' ) #查看acc文件状态 shutil.copymode( 'acc' , 'acc.bak' ) #拷贝权限 shutil.copytree( 'supermarket' , 'super1' ,ignore = shutil.ignore_patterns( '*.py' )) #递归拷贝,只拷贝除了以py结尾的文件 shutil.make_archive( 'super.tar.gz' , 'bztar' , 'super' ) #将super文件以bz格式压缩,压缩后的名字是super.tar.gz |