python linux解密zip_Python Linux系统管理之使用Python管理压缩包
一、使用tarfile库读取与创建tar包
0、先创建一些测试文件
touch {1..2}.txt
1、创建压缩包
In [7]: import tarfile
In [9]: with tarfile.open('demo.tar',mode='w') as out:
...:out.add('1.txt')
...:out.add('2.txt')
...:---------------------------------------------------------------------------FileNotFoundError Traceback (most recent call last) in
1 with tarfile.open('demo.tar',mode='w') as out:----> 2 out.add('1.txt')3 out.add('2.txt')4# 最后一空行直接回车即可
2、读取tar包
In [3]: with tarfile.open(‘demo.tar’) as t:
…: for file in t.getmembers():
…: print(file.name)
…:
1.txt
2.txt
3、创建压缩包
with tarfile.open(‘demo.tar.gz’,mode=’w:gz’) as out:
…: out.add(‘1.txt’)
…: out.add(‘2.txt’)
…:
4、读取压缩包
In [6]: with tarfile.open(‘demo.tar.gz’,mode=’r:gz’) as out:
…: for f in out.getmembers():
…: print(f.name)
…:
1.txt
2.txt
5、提取单个或者所有文件
In [14]: with tarfile.open(‘demo.tar.gz’,mode=’r:gz’) as out:
…: out.extract(‘1.txt’)
…:
In [15]: ls
1.txt anaconda-ks.cfg demo.tar demo.tar.gz
In [16]: with tarfile.open(‘demo.tar.gz’,mode=’r:gz’) as out:
…: out.extractall()
…:
In [17]: ls
1.txt 2.txt anaconda-ks.cfg demo.tar demo.tar.gz
二、使用zipfile库创建和读取压缩包
1、创建zip文件
In [1]: import zipfile
In [2]: newZip = zipfile.ZipFile(‘demo.zip’,’w’)
In [3]: newZip.write(‘1.txt’)
In [4]: newZip.write(‘2.txt’)
In [5]: newZip.close()
In [6]: ls
1.txt 2.txt anaconda-ks.cfg demo.tar demo.tar.gz demo.zip
2、读取zip文件
In [7]: newZip = zipfile.ZipFile(‘demo.zip’)
In [8]: newZip.namelist()
Out[8]: [‘1.txt’, ‘2.txt’]
3、解压zip文件
In [12]: newZip.extract(‘1.txt’)
Out[12]: ‘/root/1.txt’
In [13]: newZip.extractall()
In [14]: ls
1.txt 2.txt anaconda-ks.cfg demo.tar demo.tar.gz demo.zip
三、使用shutil管理压缩包
In [1]: import shutil
In [2]: shutil.make_archive(‘demo’,’zip’)
Out[2]: ‘demo.zip’
In [3]: shutil.make_archive(‘demo’,’gztar’)
Out[3]: ‘demo.tar.gz’
In [4]: shutil.unpack_archive(‘demo.tar.gz’)
In [5]: shutil.unpack_archive(‘demo.zip’)
python linux解密zip_Python Linux系统管理之使用Python管理压缩包相关推荐
- python利器怎么编程-Linux 利器- Python 脚本编程入门(一)
导读 众所周知,系统管理员需要精通一门脚本语言,而且招聘机构列出的职位需求上也会这么写.大多数人会认为 Bash (或者其他的 shell 语言)用起来很方便,但一些强大的语言(比如 Python)会 ...
- 好程序员Python学习路线分享Linux和数据库部分
好程序员Python学习路线分享Linux和数据库部分,技能树:掌握Linux操作系统管理技术,可以搭建几乎所有Linux环境服务器. 学习线路简单示意图: 知识点细化: Linux操作系统:常见操作 ...
- Python基础学习1(Python的Windows和Linux的安装及简单学习)
一Python的安装 1.Windows下安装Python (1)windows 命令行的几个常见的命令 dir:查看当前目录下的所有文件,以及目录 cd + NAME:进入到NAME目录下(tab键 ...
- Linux必学的系统管理命令-1
Linux必学的系统管理命令<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" ...
- 鸟哥的Linux私房菜(基础篇)- 第八章、Linux 磁盘与文件系统管理
第八章.Linux磁盘与文件系统管理 最近升级日期:2009/08/30 系统管理员很重要的任务之一就是管理好自己的磁盘文件系统,每个分割槽不可太大也不能太小,太大会造成磁盘容量的浪费,太小则会产生文 ...
- 《易学Python》——1.4 Linux
本节书摘来自异步社区<易学Python>一书中的第1章,第1.4节,作者[澳]Anthony Briggs,王威,袁国忠 译,更多章节内容可以访问云栖社区"异步社区"公 ...
- linux下python安装opencv库_Linux下怎么配置python和opencv
匿名用户 1级 2017-06-20 回答 以下说明在Linux下Python和OpenCV结合安装的过程,Python要使用OpenCV模块,则必须导入OpenCV提供的包,所以要提供Python支 ...
- 用freeze.py打包python程序成可执行程序(linux)
用freeze.py打包python程序成可执行程序(linux) 2009-12-16 19:55:13 分类: 用freeze.py打包python程序成可执行程序(linux) 为了将一批 ...
- linux终端使用python3,3 个 Python 命令行工具 | Linux 中国
原标题:3 个 Python 命令行工具 | Linux 中国 用 Click.Docopt 和 Fire 库写你自己的命令行应用. -- Jeff Triplett, Lacey Williams ...
最新文章
- tinybert华为
- sparkcore分区_Spark学习:Spark源码和调优简介 Spark Core (二)
- UVA11419 我是SAM
- sql 随机数高效率算法
- 余额宝 vs. P2P网贷,谁更有生命力?
- seq2seq和Transformer
- 程序员十大非技术面试问题及策略
- mysql limit括号_采坑笔记——mysql的order by和limit排序问题
- 信息奥赛一本通(1119:矩阵交换行)
- PX4 CMakeLists.txt 文件剖析
- Linux下Exit和_exit函数说明
- TrustBase团队完成subscript语言的Web3基金会Grant资助计划项目交付
- 从技术、服务到共创 声网 Agora 携手合作伙伴共建 RTC 生态
- java在线生成word文档_java导出word之FreeMarker生成word文档
- 非主流字体输入法_魏大勋更博晒非主流自拍,粉丝的关注点却在他的字体上,太复杂了...
- mac 谷歌浏览器翻译问题
- SQL注入实战 绕WTS-WAF
- 颜色偏差裙子测试软件,蓝黑/白金裙子告诉你视觉误差到底有多大?——一条裙子引发的全民纠结...
- 三相桥式全控整流电路simulink仿真_变频器为什么要整流然后再逆变?
- android使用动画画心形,Android中利用画图类和线程画出闪烁的心形,送给亲爱的他(她)...
热门文章
- IntelliJ IDEA Maven Gradle的配置
- leetcode 230. Kth Smallest Element in a BST | 230. 二叉搜索树中第K小的元素(Java)
- 【Python Flask】使用Ajax从后台请求数据
- Logisim 组合电路设计 七段数码管的使用
- 网络标准之:IANA定义的传输编码
- 在php中如何便利字符串,php字符串可以遍历嘛
- 容器源码分析之HashTable(八)
- Effective Java之必要时进行保护性拷贝(三十九)
- 深度学习在CTR预估任务中的应用
- 怎么理解 IaaS、SaaS 和 PaaS 的区别?