Linux 下的归档与压缩之 tar 与 gzip 的基本使用
创始人
2025-05-30 21:24:25
0次

文章目录

  • 参考
  • 描述
  • 归档与压缩
      • 归档
          • 常用工具
      • 压缩
          • 常用工具
      • 归档并压缩
  • tar
      • 选项
      • 常见形式
          • 细节
  • gzip
      • 选项
      • 常见形式
          • 细节

参考

项目描述
维基百科Tar
维基百科官网
维基百科Gzip
Linux 命令行与 shell 脚本编程大全ISBN 978-7-115-59251-4

描述

项目描述
操作系统Ubuntu 22.04.2 LTS(64 位)
tar1.34
gzip1.10

归档与压缩

归档

通过对多个文件进行归档操作,我们将得到一个归档文件。使用归档文件将使得文件在系统间的传输更加便利。

常用工具

tar

tar 是 Unix 和 类 Unix 系统中的归档打包工具,可以将多个文件合并为一个文件。目前,tar 文件格式已经成为 POSIX 标准。tar 设计的最初目的是将文件备份到磁带上 ( Tape Archive ) ,因而得名 tar。


上述内容整理自 维基百科

压缩

在计算机科学和信息论中,数据压缩或者源编码是按照特定的编码机制用比未经编码少的数据比特(或者其它信息相关的单位)表示信息的过程。


上述内容引用自 维基百科

常用工具

gzip

Gzip 是 类 Unix 系统中常见的压缩及解压缩工具。Gzip 是 GUN 中的一员,名称中的 G,指的便是 GNU 。

Bzip2

bzip2 相比传统的 gzip 或者 ZIP 的压缩效率更高,但是压缩速度较慢。与 RAR 或者 ZIP 等其它不同的是,bzip2 只是数据压缩工具,而不是归档工具,在这一点与 Gzip 类似。


上述内容整理自 维基百科

compress

Linux compress 命令是一个相当古老的 unix 档案压缩指令,压缩后的档案会加上一个 .Z 延伸档名以区别未压缩的档案,压缩后的档案可以以 uncompress 解压。若要将数个档案压成一个压缩档,必须先将档案 tar 起来再压缩。由于 gzip 可以产生更理想的压缩比例,一般人多已改用 gzip 为档案压缩工具。


上述内容引用自 菜鸟教程

归档并压缩

由于 gzip 无法对多个文件或目录进行合并压缩,所以其常常与 tar 一起使用。由 tar 将多个文件或目录进行归档,再由 gzip 实行压缩。目前,tar 支持将归档文件自动提交给其他压缩工具进行压缩。这意味着,使用 tar,您将能够直接完成多个文件或目录的归档及压缩操作。

归档并压缩

上述图片引用自 维基百科


tar

选项

项目描述
-f指定文件(指定何种类型的文件依据情况而定)。
-c、--create创建一个归档文件,使用 -f 指定归档文件使用的文件名称。
--delete使用 -f 选项指定归档文件,从归档文件中删除部分文件。
-x、--get、--extract使用 -f 选项指定归档文件,从目标归档文件中提取部分或全部文件。如未指定需要从归档文件中提取的文件,默认提取归档文件中的全部文件。
-r、--append使用 -f 选项指定归档文件,将非 tar 归档文件的文件附加到指定归档文件中。
-k、--keep-old-files使用 -f 指定归档文件,从归档文件中提取文件时,不覆盖其他文件。若目录中已存在同名文件,则取消该文件的提取操作,继续执行其他文件的提取操作。
-t、--list使用 -f 选项指定归档文件,列出该归档文件中所包含的其他文件。
-v、--verbose输出与当前命令相关的执行信息。在单条命令中,你可以多次重复使用该选项。在某些情况下,这将得到更为详细的描述信息。
-j将结果传递给工具 Bzip2 进行处理(进行何种处理,由 tar 自动进行指派)。
-J将结果传递给工具 xz 进行处理(进行何种处理,由 tar 自动进行指派)。
-z将结果传递给工具 Gzip 进行处理(进行何种处理,由 tar 自动进行指派)。
-Z将结果传递给工具 compress 进行处理(进行何种处理,由 tar 自动进行指派)。
--version输出当前使用的 tar 的版本。
--help输出与 tar 相关的帮助信息。

常见形式

将多个文件归档为一个文件

将当前工作目录下的 partition_1 及 partition_2 打包,得到归档文件 result.tar 。

tar -cvf result.tar partition_1 partition_2

查看归档文件中的文件内容

列出当前工作目录下的归档文件 result.tar 中的文件。

tar -tvf result.tar

将一个归档文件附加到另一个归档文件末尾

将当前工作目录下的归档文件 result.tar 附加到当前工作目录的归档文件 result.tar 中。

  1. 检索当前工作目录下的文件
ls

执行结果

partition_1  partition_2  result.tar
  1. 检索归档文件 result.tar 中的文件
tar result.tar -tvf

执行结果

-rw-r--r-- root/root         0 2023-03-19 17:57 partition_1
-rw-r--r-- root/root         0 2023-03-19 17:57 partition_2
  1. 将归档文件 result.tar 附加到 result.tar 中
tar -Avf result.tar result.tar
  1. 检索归档文件 result.tar 中的文件
tar -f result.tar -tv

执行结果

-rw-r--r-- root/root         0 2023-03-19 17:57 partition_1
-rw-r--r-- root/root         0 2023-03-19 17:57 partition_2
-rw-r--r-- root/root         0 2023-03-19 17:57 partition_1
-rw-r--r-- root/root         0 2023-03-19 17:57 partition_2

从归档文件中删除部分文件

  1. 从当前工作目录下的归档文件 result.tar 中将 partition_1 文件进行删除。
tar --delete -f result.tar partition_1
  1. 检索归档文件 result.tar 中的文件
tar -f result.tar -tv

执行结果

-rw-r--r-- root/root         0 2023-03-19 17:57 partition_2
-rw-r--r-- root/root         0 2023-03-19 17:57 partition_2

将当前工作目录下的 partition_1 附加到归档文件 result.tar 中

tar -rf result.tar partition_1

从当前工作目录下的归档文件 result.tar 中提取部分文件(partition_2)

tar -xf result.tar partition_2

从当前工作目录下的归档文件 result.tar 中提取全部文件

tar -xf result.tar 

从当前工作目录下的归档文件 result.tar 中删除所有文件

tar --delete result.tar

将多个文件归档后交由 gzip 进行归档文件的压缩

将当前工作目录下的 partition_1 与 partition_2 文件归档后交由 Gzip 进行压缩,得到归档压缩文件 result.tar.gz 。

tar -czvf result.tar.gz partition_1 partition_2

将归档压缩文件交由 gzip 解压后,再由 tar 进行解除归档操作

tar -xzvf result.tar.gz
细节
  1. 将文件添加到归档文件后,源文件将不会发生改变。
  2. 从归档文件中提取文件后,该文件将不会从该归档文件中消失。
  3. 归档文件中可以出现多个同名文件,在提取归档文件中的文件时,可能因此出现文件覆盖的现象。可以使用 -k 或 –keep-old-files 选项来避免解除归档的过程中,覆盖已有的同名文件。

gzip

选项

项目描述
-d、--decompress、--uncompress将目标文件进行解压缩操作。
-k、--keep实行解压操作或压缩操作后保留源文件。
-l、--list列出与目标压缩文件相关的一系列信息。
-r、--recursive对目标文件夹进行递归处理以操作目标文件夹中的所有文件(不包括隐藏文件)。
-v、--verbose显示压缩过程中相关的操作信息。
-t、--test检测压缩文件的完整性。该选项推荐同 -v 或 –verbose 选项一同使用。
-<压缩效率>压缩效率是一个介于 1-9 的数值,预设值为"6"。指定愈大的数值,压缩效率就会愈高。
--best此参数的效果与使用 -9 参数所得到的效果相同。
--fast此参数的效果与使用 -1 参数所得到的效果相同。
-V、--version显示 Gzip 的版本信息。
-h、--help显示与 Gzip 相关的帮助信息。

常见形式

将当前工作目录下的 partition_1 及 partition_2 分别进行压缩

gzip -k partition_1 partition_2

执行结果

源文件(被压缩文件)未被删除,得到文件 partition_1.gz 与 partition_2.gz。

将当前工作目录下的 partition_1.gz 与 partition_2.gz 分别进行解压

gzip -d partition_1.gz partition_2.gz

执行结果

源文件(压缩文件)均被删除,得到文件 partition_1 与 partition_2 。

细节
  1. 使用 Gzip 将文件压缩后,源文件默认将被删除,你可以使用 -k 选项来避免源文件的删除。
  2. 使用 Gzip 将文件解压后,压缩文件默认将被删除,你同样可以使用 -k 选项来避免压缩文件的删除。
  3. 使用 Gzip 压缩文件夹时,如无使用 -r 选项,则压缩指令将被忽略。使用 -r 选项后也无法将文件夹进行归档压缩,而是将该文件夹中所有的文件(包括后代文件夹中的文件,但不包括其中的隐藏文件)单独进行压缩。对此,请参考如下示例:

检索目标文件夹中的文件

ls -a C++

执行结果

.  ..  demo  demo.cpp  demo.gz  hello  hello.cpp  hello.gz  .vscode

使用 Gzip 将目标文件夹进行压缩处理

gzip -r C++

检索目标文件夹中的文件

ls -a C++

执行结果

.  ..  demo.cpp.gz  demo.gz  hello.cpp.gz  hello.gz  .vscode

相关内容

热门资讯

在大吉订购APP订购交易亏损被...   近期,不少投资者反映在“大吉订购App”上投资白银、铂金等商品遭遇严重亏损。该平台宣称提供现货订...
铂银壹号APP商品订购交易亏损...   许多中小投资者误以为网上的“商品现货订购”是合规合法的理财渠道,殊不知这背后隐藏着巨大的合规风险...
兴鑫淘金APP贵金属订购交易亏...   白银、贵金属或其他商品类投资,除国家批准的正规期货交易场所及持牌期货公司外,市面上大量第三方交易...
铂银掘金APP无资质的违规平台...   铂银掘金等平台的投资者,往往是被“注册送现金”“充值返现券”“首单免亏”等广告话术吸引,进而下载...
八方淘金APP订购交易不合规,...   “八方淘金APP”“铂银掘金APP”“铂银壹号APP”等软件被指以“现货订购”为名,实际采用高杠...
在指尖订购APP订购商品亏损被...   指尖订购APP这类平台,表面是“订购交易”,实则是披着电商外衣的非法期货陷阱。绝大多数投资者被蒙...
在犀贝易购APP做商品订购交易...   市面上打着“现货投资”“贵金属交易”旗号的APP并不少,但真正合规、受监管的平台并不多。犀贝易购...
易达淘金APP虚假商品订购交易...   易达淘金APP存在严重的虚假宣传与违规交易行为。该平台打着“商品订购”的旗号,实则通过不合规的交...
大浪淘金APP白银订购亏损被骗...   大浪淘金APP最隐蔽的套路,在于其完全封闭的内盘交易系统。表面上,它宣称与国际贵金属市场接轨;实...
一品好购APP上订购白银出现亏...   一品好购APP原名“一品订购”,运营方为上海宝智未来信息技术有限公司。近期不少投资者反映在该平台...
九州订购APP贵金属订购投资骗...   九州订购APP正通过抖.音、快手、今日头条等平台大量投放投资广告,用“5元起投”“充值返现”“0...
坚锅淘金APP交易软件并不正规...   当前,市面上大量所谓的“现货商城订购”交易软件,早已偏离了正常的实物商品买卖,演变为高杠杆、高手...
斗金订购APP贵金属期货交易骗...   斗金订购APP的投资者往往被铺天盖地的广告宣传所诱导——注册即送现金、充值返现券等看似诱人的福利...
警惕!云启购APP违规经营,披...   "5元起投、充值返现、稳赚不赔"——这些诱人的广告语背后,可能是一个精心设计的金融陷阱。  近期...
量子淘金APP贵金属投资不合规...   "4元起投""充值返券""月入过万"——这些极具诱惑力的广告语在短视频平台、社交软件上铺天盖地。...
鑫汇智投APP贵金属商品订购骗...   鑫汇智投APP非法期货投资骗局,受害者在投资过程中根本不懂交易,也不去研究和验证这个平台是否正规...
矅光智策APP平台违规经营非法...   矅光智策APP对外宣称是“商城订购”“现货交易”,但查询其经营范围,并未显示具备开展现货期货交易...
黄金珠宝怎么选?内侧刻字都代表... 潮新闻客户端 记者 马焱 通讯员 任倩影 9月8日下午,“云游杭州 乐购金秋”——“浙城·浙放心”活...
原创 冰... 最近全球国债市场正在上演魔幻一幕: 美债、日债、欧债遭遇猛烈抛售,收益率冲到几十年新高,美国财政部都...
日韩股市开盘表现分化 上证报中国证券网讯 9月9日,日韩股市开盘表现分化,韩国综合指数开盘上涨0.26%,报6972.87...