linux所有文件打包压缩,Linux基础教程:对文件打包压缩

一、须知

文件数量太多, 如果需要拷来拷去是不是很麻烦?    怎么办?  打包!

文件太大,通过网络下载、传输会不会很费时间?    怎么办?  压缩!

在Linux环境中,打包压缩文件的扩展名多是:【*.tar, *.tar.gz, *.gz, *.bz2, *.tar.xz】这些文件统称为“tar”包, 想想为什么会有这样的扩展名么? 不是说过 Linux的扩展名没有什么用吗?  【不同的后缀,表明所使用的压缩算法不同, 压缩比从低到高的排序是: gz < bz2 < xz ; 压缩速度则正好相反 gz > bz2 > xz】

是的。 文件扩展名对于Linux来说, 并没有任何卵用。 然而、但是, 由于Linux支持的压缩命令很多,而且不同指令所采用的压缩技术不相同,当然彼此之间可能就无法互通(压缩、解压缩)。所以, 当我们下载到某个压缩文件时,自然就需要知道该档案是由哪种压缩指令制作的,好用来对照进行解压缩。

也就是说,虽然Linux文件的扩展名和其属性没有绝对关系,但是为了便于我们易于识别,所以适当的扩展名还是必要的。

打包: 实质将许多文件和目录打包成一个文件。

压缩:把大文件或目录通过压缩算法变成一个较小的文件。

大多命令仅能针对单一文件来进行压缩,gzip与bzip2也能对目录进行压缩,但是结果为:将目录内的所有文件“分别、单独”进行压缩操作。

一、文件的打包和压缩

tar : 打包、压缩一个命令全搞定。  版本稍高的 tar 命令, 选项前的 - , 是可选的。

解压缩“tar”包非常简单,只需要这样:

12 $  tar  xf  filename

$  tar  xf  filename  -C /tmp    # 解压到/tmp目录

注意: filename 就是需要解压缩"tar"包的文件名,而且使用后一种形式的时候,选项 f 一定要放到最后。

创建“tar”包

1 $  tar -cvf  filename.tar  FILES

指定压缩算法: z 代表 gz, j 代表 bz2, J 代表 xz。

123 $  tar  -zcvf  filename.tar.gz  FILES

$  tar  -jcvf  filename.tar.bz2  FILES

$  tar  -Jcvf  filename.tar.xz  FILES

注意:其中FILES表示被打包盒压缩的文件或目录名。

仅解开单一文件的方法

1234 ## 首先 –jtvf 查看需要解压的文件名

tar -jtvf filename.tar.bz2    # 查询需要解压的文件名:假设为 etc/abc。

## 解压,指定 etc/abc 文件名

tar –jxvf filename.tar.bz2  etc/abc

记忆: 记住 tar xvf  然后 把 x 位置替换为 c , t 就行了。

压缩(选项:c):tar –jcvf  filename,tar.bz2    要被压缩的文件或目录名称(可多个)

查询(选项:t):tar –jtvf  filename,tar.bz2

解压缩(选项:x):tar –jxvf  filename.tar.bz2 –C  欲解压缩的目录

因为-f参数后必须紧接 “要新创建的文件名”。

tar默认情况下会把绝对路径前的 / 去掉, 这样在恢复的时候, 如果不用-C / 指定根目录为其相对目录, tar会在把解包后的目录结构放在当前目录。如果需要用绝对路径解压或者压缩呢, 使用-P选项吧

b72087a813fd3ec31873f31a031a8f51.png

gzip & bzip2命令

gzip 常用选项:

-c    : 将压缩输出到 stdout,可通过重定向处理

-d  : 解压缩

-v  : 详细信息

-#  : 压缩比 1-9

bzip 同gzip的用法一样。-k选项 保留原文件

总结:

gzip和bzip2 不会保留原文件,而新生成一个压缩文件

只能对单个文件压缩

zip & unzip 命令:

# zip all.zip *.jpg    #这条命令是将所有.jpg的文件压缩成一个zip包

# unzip all.zip        #解压缩

0b1331709591d260c1c78e86d0c51c18.png

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

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

相关文章

钉钉平台助力中国一汽疫情防控 数字化迈入新阶段

面对突如其来的疫情&#xff0c;中国一汽紧急应对、快速响应&#xff0c;携旗下一汽-大众、一汽丰田捐赠资金8100万元&#xff0c;并成立了疫情防控专项基金。同时&#xff0c;通过旗下“一汽出行”公司组织 “特别爱心车队”&#xff0c;在抗击疫情期间&#xff0c;提供安全、…

阿里靠什么支撑 EB 级计算力?

阿里妹导读&#xff1a;MaxCompute 是阿里EB级计算平台&#xff0c;经过十年磨砺&#xff0c;它成为阿里巴巴集团数据中台的计算核心和阿里云大数据的基础服务。去年MaxCompute 做了哪些工作&#xff0c;这些工作背后的原因是什么&#xff1f;大数据市场进入普惠红海的新阶段&a…

为什么说流处理即未来?

本文整理自 Flink 创始公司 Ververica 联合创始人兼 CTO - Stephan Ewen 在 Flink Forward China 2018 上的演讲《Stream Processing takes on Everything》。 这个演讲主题看似比较激进&#xff1a;流处理解决所有问题。很多人对于 Flink 可能还停留在最初的认知&#xff0c;…

别再用那些已经淘汰的技术了!2020 年 9 大顶级 Java 框架出炉!!

来源 | Patricia Neil责编 | Carol出品 | CSDN云计算&#xff08;ID&#xff1a;CSDNcloud&#xff09;顶级Java框架#1&#xff1a;Spring顶级Java框架#2&#xff1a;Hibernate顶级Java框架#3&#xff1a;Struts顶级Java框架#4&#xff1a;Play顶级Java框架#5&#xff1a;Googl…

字符串、数组、集合在使用时出现空指针怎么办?_03

文章目录1. 寻找代码案例中出错的场景2. 案例1. 寻找代码案例中出错的场景 字符串使用equals时报空指针错误 对象数组最燃new出来了&#xff0c;但是如果没有初始化&#xff0c;一样会报空指针错误 List对象add null不报错&#xff0c;但是addAll 不能添加null&#xff0c;否则…

云原生时代来袭 下一代云数据库技术将走向何方?

全面云化的时代已经到来&#xff0c;面对一系列的新技术和挑战&#xff0c;数据库市场将面临怎样的变革&#xff1f;作为云服务提供商&#xff0c;如何帮助更多的企业级用户把握“云”潮&#xff0c;提供最高效、最具价值的数据库解决方案&#xff1f; 日前&#xff0c;在阿里…

直播连麦贾扬清,谈谈他所理解的四大 AI 落地问题 | 攻“疫”技术公开课

从机器学习模型的层次来看&#xff0c;大致经历了两次发展浪潮&#xff1a;浅层学习&#xff08;Shallow Learning&#xff09;和深度学习&#xff08;Deep Learning&#xff09;。1980年代&#xff0c;人工神经网络的反向传播算法&#xff08;也叫Back Propagation算法或者BP算…

linux区分用户的权限级别可用,Linux用户及权限管理

基本操作首选我们梳理一下 Linux 下的用户、用户组、文件权限等基本知识&#xff0c;然后后面通过一个案例来实际演示一下权限设置的一些操作。首先 Linux 系统中&#xff0c;是有用户和用户组的概念的&#xff0c;用户就是身份的象征&#xff0c;我们必须以某一个用户身份来操…

别人家的工程师:阿里巴巴工程师有了新帮手,AI可帮助修Bug

尽管工程师用代码创造了AI&#xff0c;但AI又可以对这些代码点评一番、甚至修复Bug&#xff0c;工程师和AI的关系正在变得微妙。 AI评委引热议&#xff0c;阿里巴巴表示&#xff1a;AI不会取代工程师 4月18日&#xff0c;2019阿里巴巴研发效能峰会——“83行代码挑战赛”决赛…

31岁,年薪33万:“谢谢今天裁掉我” !有底气的人生无需解释!

最近脉脉一则帖子炸锅了&#xff1a;某HR发帖称公司以按时下班为由裁员。这种情况下很多人都慌了&#xff0c;大家纷纷把“副业救国”奉为神律。可是你有没有认真的想过&#xff0c;为什么现在大家都需要副业&#xff1a;意外裁员后&#xff0c;房贷能够按时还上不至于“回收”…

linux脚本语言求累加和,Linux Shell脚本语言与数学表达式

当你理解了Shell脚本&#xff0c;每当需要时都能流畅编写时&#xff0c;那种感觉很爽的。本章中&#xff0c;我们将教你用脚本语言进行比较复杂的数学运算。让我们从斐波那契数列开始吧。斐波那契数列&#xff0c;又称黄金分割数列&#xff0c;指的是这样一个数列&#xff1a;0…

你应该知道的 HBase 基础,都在这儿了

阿里妹导读&#xff1a;2006 年10 月Google 发布三架马车之一的《Bigtable&#xff1a;A Distributed Storage System for Strctured Data》论文之后&#xff0c;Powerset 公司就宣布 HBase 在 Hadoop 项目中成立&#xff0c;作为子项目存在。后来&#xff0c;在2010 年左右逐渐…

一文读懂Docker及其对系统管理员的重要性

作者 | Damian Perera编译 | 火火酱&#xff0c;责编 | Carol出品 | CSDN云计算&#xff08;ID&#xff1a;CSDNcloud&#xff09;自从Docker在2013年初上线以来&#xff0c;就与程序员及系统管理员之间产生了一种爱恨交加的奇妙关系。虽然与我交谈过的一些经验丰富的的开发人员…

主流微服务注册中心浅析和对比

开源产品受开发者热捧&#xff0c;是因为其代码透明、可以参与共建、有社区进行交流和学习&#xff0c;当然更重要的是开源产品的接入成本低。个人开发者或者中小型公司往往会将开源产品作为选型首选。 开发者通过阅读源代码&#xff0c;理解产品的功能设计和架构设计&#xf…

linux内核重要结构体,Linux中list_head结构体相关 | 技术部落

在Linux内核中&#xff0c;提供了一个用来创建双向循环链表的结构 list_head。虽然linux内核是用C语言写的&#xff0c;但是list_head的引入&#xff0c;使得内核数据结构也可以拥有面向对象的特性&#xff0c;通过使用操作list_head 的通用接口很容易实现代码的重用&#xff0…

Java老矣,尚能饭否?2020 Java生态系统报告出炉

最近&#xff0c;Jrebel公布了一份2020 Java生态系统报告&#xff0c;这份报告主要关注开发人员在开发过程中使用的技术。这份报告包含了技术人员正在用的编程语言、应用程序架构、应用服务器、运行时平台、框架技术、IDE、JRE/JDK版本、数据库、部署模型、构建工具和虚拟化工具…

AI评委引热议,阿里巴巴表示:AI不会取代工程师

昨日&#xff0c;一位能给工程师代码打分的“AI评委”引发了热议。起因是在2019阿里巴巴“83行代码挑战赛”决赛现场&#xff0c;一位运行在云端的AI评委和现场的专家评委、大众评委配合&#xff0c;一起对选手提交的的代码做综合评价。 “AI是否会取代工程师”的话题再次在网络…

windows2012运行linux,Linux一分钟部署完毕上线运行,windows server你要折磨我两天?...

原标题&#xff1a;Linux一分钟部署完毕上线运行&#xff0c;windows server你要折磨我两天&#xff1f;周四晚上好&#xff0c;各位~~经过数度折腾之后&#xff0c;终于对windows累觉不爱了。且不说点点点的弊端&#xff0c;浪费鼠标左右键的机械力&#xff0c;还有无数个需要…

使用DataWorks来调度AnalyticDB任务

DataWorks作为阿里云上广受欢迎的大数据开发调度服务&#xff0c;最近加入了对于AnalyticDB的支持&#xff0c;意味着所有的AnalyticDB客户可以获得任务开发、任务依赖关系管理、任务调度、任务运维等等全方位强大的能力&#xff0c;现在就给大家仔细介绍下如何使用DataWorks来…

稳定、可扩展、模块化、简化部署过程、版本控制……一文看懂 Kubernetes 到底如何运用!...

来源 | Daniele Fontani编译 | 火火酱&#xff0c;责编 | Carol出品 | CSDN云计算&#xff08;ID&#xff1a;CSDNcloud&#xff09;说实话&#xff0c;我是个Kubernetes爱好者。Kubernetes是软件开发的重要一步。当我遇到它时&#xff0c;我就想&#xff1a;“这就是将容器融入…