Linux之文件打包,压缩,解压

打包和压缩

Linux中对文件进行打包,压缩有两种命令

zip:将文件进行压缩

tar:将文件进行打包(通过和其他命令结合,也能实现压缩的功能)

1、tar打包命令

在Linux中,tar命令是一个常用的工具,用于打包和解压文件。它在文件管理、备份和压缩方面扮演着重要角色。tar(tape archive)最初是为磁带设备设计的,但现在已经成为文件操作的标准工具之一。它能够将一组文件和目录打包成单个归档文件,也可以从归档文件中提取出文件和目录。通过结合不同的选项,你可以在tar命令中实现广泛的功能。

tar [选项] file.tar [file]

1.1、常用参数

参数功能
-c创建新的归档文件(打包)
-x从归档文件中提取文件(解包)
-f <文件名>指定归档名
-v显示操作的详细信息
-z通过gzip的方式压缩归档文件
-j通过bzip2的方式压缩归档文件
-C指定目录

 

1.2 常规操作

# 将file1的文件打包成一个文件
tar -cvf file.tar file1# 将aa目录打包
tar -cvf aa.tar aa/# 将aa目录打包并通过gzip的方式压缩
tar -zcvf aa.tar.gz aa/#查看归档文件中的内容
tar -tvf aa.tar# 将aa.tar解压到当前路径
tar -xvf aa.tar# 将aa.tar解压到指定目录
tar -xvf aa.tar -C bb/

2、 zip压缩命令

zip file.zip [选项] 文件

2.1、 常用参数

参数功能
-r压缩文件夹
-q压缩文件时不显示压缩过程的详细信息。
-d从压缩文件中删除指定文件
-u 用于更新现有的ZIP文件,将新的文件或修改后的文件添加到ZIP存档中。
-f用于刷新(更新)现有ZIP文件中的指定文件。
-m用于移动(归档)文件到一个ZIP压缩文件中,并在移动后将源文件删除。
-e用于对ZIP文件进行加密。
-z为压缩文件添加注释。

2.2、常规操作

# 压缩某个文件
[root@192 ~]# zip aa.zip aa.taradding: aa.tar (deflated 97%)
# 压缩某个目录
[root@192 ~]# zip aa.zip -r aa/adding: aa/ (stored 0%)adding: aa/file1 (deflated 85%)adding: aa/file5 (deflated 82%)adding: aa/file2 (deflated 82%)adding: aa/file.tar (deflated 96%)
# 静默压缩
[root@192 ~]# zip aa.zip -q -r aa/
[root@192 ~]# # 从压缩文件中删除某个文件
[root@192 aa]# zip file.zip -d file5
deleting: file5# 往压缩文件中更新某个文件
[root@192 aa]# zip file.zip -u file5adding: file5 (deflated 82%)# 往压缩文件中更新某个文件
[root@192 aa]# zip file.zip -f file5 
freshening: file5 (deflated 71%)# 将某个文件添加到压缩文件中,并删除源文件
[root@192 aa]# zip file.zip -m file6adding: file6 (stored 0%)
[root@192 aa]# ll
总用量 16
-rw-r--r--. 1 root root 1901 6月   5 21:56 file1
-rw-r--r--. 1 root root   74 6月   5 21:51 file2
-rw-r--r--. 1 root root   86 6月   5 22:49 file5
-rw-r--r--. 1 root root 1400 6月   5 22:50 file.zip# 压缩某个文件并进行加密
[root@192 aa]# zip test.zip file* -e
Enter password: 
Verify password: adding: file1 (deflated 85%)adding: file2 (deflated 82%)adding: file5 (deflated 71%)# 压缩某个文件并添加注释
[root@192 aa]# zip test.zip file* -zadding: file1 (deflated 85%)adding: file2 (deflated 82%)adding: file5 (deflated 71%)
enter new zip file comment (end with .):
zheshi^H^H
.

3、unzip解压命令

unzip是用来对zip文件进行解压的命令

unzip [选项] 压缩包名 源文件或源目录列表

3.1、 常用参数

参数功能
-l显示压缩文件内所包含的文件
-t检查压缩文件是否正确
-v执行时显示详细的信息
-z仅显示压缩文件的备注文字
-n解压缩时不要覆盖原有的文件
-P<密码>使用zip的密码选项

-q

执行时不显示任何信息
-d<目录>指定文件解压缩后所要存储的目录

3.2、常规操作

# 显示压缩包中的文件,但是不做解压
[root@192 aa]# unzip -l t.zip 
Archive:  t.zipLength      Date    Time    Name
---------  ---------- -----   ----0  06-05-2024 23:33   test/1901  06-05-2024 21:56   test/file174  06-05-2024 21:51   test/file286  06-05-2024 22:49   test/file5
---------                     -------2061                     4 files# 解压文件压缩包到指定目录(如果目录不存在,则会创建一个目录)
[root@192 aa]# unzip  t.zip -d test/
Archive:  t.zipinflating: test/file1              inflating: test/file2              inflating: test/file5# 解压路径压缩包到指定目录(如果目录不存在,则会创建一个目录)
先创建一个压缩包(相对路径)
[root@192 aa]# zip t.zip -r test/adding: test/ (stored 0%)adding: test/file1 (deflated 85%)adding: test/file2 (deflated 82%)adding: test/file5 (deflated 71%)[root@192 aa]# ll
总用量 16
-rw-r--r--. 1 root root 1901 6月   5 21:56 file1
-rw-r--r--. 1 root root   74 6月   5 21:51 file2
-rw-r--r--. 1 root root   86 6月   5 22:49 file5
drwxr-xr-x. 2 root root   45 6月   5 23:33 test
-rw-r--r--. 1 root root  918 6月   5 23:35 t.zip# 解压到指定目录
[root@192 aa]# unzip t.zip -d a/
Archive:  t.zipcreating: a/test/inflating: a/test/file1            inflating: a/test/file2            inflating: a/test/file5            
[root@192 aa]# ll
总用量 16
drwxr-xr-x. 3 root root   18 6月   5 23:35 a
-rw-r--r--. 1 root root 1901 6月   5 21:56 file1
-rw-r--r--. 1 root root   74 6月   5 21:51 file2
-rw-r--r--. 1 root root   86 6月   5 22:49 file5
drwxr-xr-x. 2 root root   45 6月   5 23:33 test
-rw-r--r--. 1 root root  918 6月   5 23:35 t.zip
可以看到在a目录下,又创建了test目录
[root@192 aa]# ll a
总用量 0
drwxr-xr-x. 2 root root 45 6月   5 23:33 test# 测试压缩文件的有效性
[root@192 aa]# unzip -t t.zip 
Archive:  t.ziptesting: test/                    OKtesting: test/file1               OKtesting: test/file2               OKtesting: test/file5               OK
No errors detected in compressed data of t.zip.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/850755.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web前端的工作内容:深度解析与探索

Web前端的工作内容&#xff1a;深度解析与探索 Web前端&#xff0c;作为互联网世界中用户与网站之间的桥梁&#xff0c;承载着丰富的交互体验和视觉呈现。其工作内容涉及多个层面&#xff0c;从基础的页面构建到复杂的交互设计&#xff0c;都需要前端开发者精心打磨。下面&…

【详细的Kylin使用心得,什么是Kylin?】

&#x1f308;个人主页: 程序员不想敲代码啊 &#x1f3c6;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f44d;点赞⭐评论⭐收藏 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共…

Qwen2-MOE-57B-A14B模型结构解读

Qwen2-MOE-57B-A14B模型结构解读 模型代码文件下载 该模型总的参数为57B&#xff0c;激活参数为14B&#xff0c;推理速度比32B的快&#xff0c;而且性能更好。 Qwen2-MOE-57B-A14B模型总体结构 <class transformers.models.qwen2_moe.modeling_qwen2_moe.Qwen2MoeForCaus…

秋招突击——算法打卡——6/5——提高{(状态机模型)股票买卖、(单调队列优化DP)最大子序列和}——新做:{考试的最大困扰度}

文章目录 提高(状态机模型)股票买卖IV思路分析实现代码参考代码 新作考试的最大困扰度个人实现参考思路 总结 提高 (状态机模型)股票买卖IV 上一次的思路总结&#xff0c;上次写的时候忘记总结了&#xff0c;现在重新画一下图 思路分析 这道题是一个经典的状态机模型&#…

用动态IP采集数据总是掉线是为什么?该怎么解决?

动态IP可以说是做爬虫、采集数据、搜集热门商品信息中必备的代理工具&#xff0c;但在爬虫的使用中&#xff0c;总是会遇到动态IP掉线的情况&#xff0c;从而影响使用效率&#xff0c;本文将探讨动态IP代理掉线的几种常见原因&#xff0c;并提供解决方法&#xff0c;以帮助大家…

牛客网刷题 | BC119 最高分与最低分之差

目前主要分为三个专栏&#xff0c;后续还会添加&#xff1a; 专栏如下&#xff1a; C语言刷题解析 C语言系列文章 我的成长经历 感谢阅读&#xff01; 初来乍到&#xff0c;如有错误请指出&#xff0c;感谢&#xff01; 描述 输入n个成绩&#…

CleanMyMac2025破解版crack+keygen

【CleanMyMac】这款神奇的软件&#xff0c;让我彻底告别了电脑卡顿的困扰&#xff01;&#x1f62e;‍&#x1f4a8; CleanMyMac绿色免费版下载如下&#xff1a;记得保存哈&#xff0c;以防失效&#xff1a; https://pan.quark.cn/s/9b08114cf404 CleanMyMac X2024全新版下载…

【JavaScript】了解 Sass:现代 CSS 的强大预处理器

我已经从你的 全世界路过 像一颗流星 划过命运 的天空 很多话忍住了 不能说出口 珍藏在 我的心中 只留下一些回忆 &#x1f3b5; 牛奶咖啡《从你的全世界路过》 在前端开发领域&#xff0c;CSS 是必不可少的样式表语言。然而&#xff0c;随着项目复杂度的…

指针(初阶2)“野指针以及指针运算”

目录 一.野指针 二.如何避免野指针 三.指针运算 1、指针&#xff08;-&#xff09;整数 2、指针 - 指针 3、指针关系运算 小编在这里声明一下&#xff0c;将某一块的知识点分为上中下或者1&#xff0c;2&#xff0c;3来编写不是为了增加小编的文章总量&#xff0c;也不是故意这…

爬虫实现思路

现在的人工智能太强大了&#xff0c;只要有问题&#xff0c;输入后就能给出大致的实现思路&#xff1b;我看了下确实没问题&#xff0c;只需要更改一些细节基本就能拿来就用&#xff1b;下面是我实验经历&#xff1a; 问题&#xff1a; c# 书写爬虫爬取按动物名称&#xff0c;…

279 基于matlab的粒子群集法对铁路电能质量控制系统的容量避行优化设计

基于matlab的粒子群集法对铁路电能质量控制系统的容量避行优化设计。计算出满足功率因素、电压不平衡度等电能指标的条件下。RPC所需要的补偿功率。求得所需最小的系统客量。该设计能快速计算出符合系统设定指标的各项最优补偿功率。并通过sumulink份真。检验设计参数的准确性。…

泛微开发修炼之旅--13通过Ecology拦截器(注解的方式),拦截后端接口,实现接口执行成功后或执行前操作源码示例

文章链接&#xff1a;泛微开发修炼之旅--13通过Ecology拦截器(注解的方式)&#xff0c;拦截后端接口&#xff0c;实现接口执行成功后或执行前操作源码示例

R语言探索与分析20-北京市气温预测分析

一、序言 近年来&#xff0c;人类大量燃烧煤炭、天然气等含碳燃料导致温室气 体过度排放&#xff0c;大量温室气体强烈吸收地面辐射中的红外线&#xff0c;造 成温室效应不断累积&#xff0c;使得地球温度上升&#xff0c;造成全球气候变暖。气象温度的预测一直以来都是天气预…

C语言详解(结构体)

Hi~&#xff01;这里是奋斗的小羊&#xff0c;很荣幸各位能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎~~ &#x1f4a5;个人主页&#xff1a;小羊在奋斗 &#x1f4a5;所属专栏&#xff1a;C语言 本系列文章为个人学习笔记&#xff0c;在这里撰写成文一…

网关API(SpringCloudGateway)如何自定义Filter

1.前言 SpringCloud 虽然给我们提供了很多过滤器&#xff0c;但是这些过滤器功能都是固定的&#xff0c;无法满足用户的各式各样的需求。因此SpringCloud提供了过滤器的扩展功能自定过滤器。 开发者可以根据自己的业务需求自定义过滤器。 2. 自定义 GatewayFilter(局部过滤器)…

2024.6.9刷题记录

目录 一、1103. 分糖果 II 1.模拟 2.数学 二、312. 戳气球 1.递归-记忆化搜索 2.区间dp 三、2. 两数相加 1.迭代 2.递归-新建节点 3.递归-原节点 四、4. 寻找两个正序数组的中位数 1.堆 2.双指针二分 五、5. 最长回文子串 1.动态规划 2.中心扩展算法 六、6. Z…

微信小程序 画布canvas

属性说明 属性类型默认值必填说明最低版本typestring否指定 canvas 类型&#xff0c;支持 2d (2.9.0) 和 webgl (2.7.0)2.7.0canvas-idstring否canvas 组件的唯一标识符&#xff0c;若指定了 type 则无需再指定该属性1.0.0disable-scrollbooleanfalse否当在 canvas 中移动时且…

【Python】解决Python报错:KeyError: ‘username‘

​​​​ 文章目录 引言1. 错误详解2. 常见的出错场景2.1 用户输入处理错误2.2 动态数据源 3. 解决方案3.1 使用 get() 方法3.2 检查键是否存在 4. 预防措施4.1 数据验证4.2 使用默认字典 (defaultdict) 结语 引言 在Python开发中&#xff0c;处理字典时遇到 KeyError 是一种…

Elastic 8.14:用于简化分析的 Elasticsearch 查询语言 (ES|QL) 正式发布

作者&#xff1a;来自 Elastic Brian Bergholm 今天&#xff0c;我们很高兴地宣布 Elastic 8.14 正式发布。 什么是新的&#xff1f; 8.14 版本最重要的标题是 ES|QL 的正式发布(GA)&#xff0c;它是从头开始设计和专门构建的&#xff0c;可大大简化数据调查。在新的查询引擎的…

Mac环境下,简单反编译APK

一、下载jadx包 https://github.com/skylot/jadx/releases/tag/v1.4.7 下载里面的这个&#xff1a;下载后&#xff0c;找个干净的目录解压&#xff0c;我是放在Downloads下面 二、安装及启动 下载和解压 jadx&#xff1a; 下载 jadx-1.4.7.zip 压缩包。将其解压到你希望的目…