文件大巴 — tar

在系统使用过程中,对文件进行存储和传输是必不可少的。从文件管理的角度而言,同时存储或传输多个文件的效率显然低于存储和管理一个文件。那么,为了提高文件管理的效率,是否有方法将多个文件打包成一个文件?tar 命令应运而生。

tar 取名于 “tape archive” ,最初为了将文件存储于磁带机而设计,随着设计人员对其不断改进,目前 tar 已经演变为以打包功能为核心的多功能应用程序。在具体使用上,可以认为 tar 命令形式由 “功能参数(主参数)” 和 “选项参数(辅助参数)” 构成。功能参数表明了 tar 的主要功能,包括 “打包、查看、拆包” 三种,这三种功能为互斥关系,即任何一次 tar 操作必为且仅为三种操作之一。选项参数作为功能参数的必要补充,与功能参数搭配使用。对选项参数的约束较少,一般一个选项对于三种功能都适用。

一、tar 的功能参数

理解 tar 的功能,可以将打包文件看成一辆大巴车,将众多入包文件看成大巴车的乘客。大巴车与乘客的关系(上车、下车)体现了 tar 的各主要功能。

  • 打包文件制作
    • 打包文件制作即是将众多文件打包成一个文件,可以看成是”上车功能”。
    • 功能参数: –create / -c / c
  • 打包文件查看
    • 打包文件查看即是查看一个打包文件中的内容,以看成是”查票功能”。
    • 功能参数: –list / -t / t
  • 打包文件解包
    • 打包文件解包即是将一个打包文件拆开,还原出被打包的文件,可以看成是”下车功能”。
    • 功能参数: –extract / -x / x

二、tar 的选项参数

  • 指定文件选项
    • 利用 tar 功能,无论是打包、查看、还是拆包,都必须要告诉 tar 要操作的文件是哪一个,即指定操作的目标(打包成那个文件、查看哪个文件、拆包哪个文件),这个目标就是通过”指定文件选项”指明。
    • 选项参数: –file=filename / -f filename
  • 处理过程信息显示选项
    • 通过该选项,可以对 tar 操作的过程进行显示。
    • 选项参数: –verbose / -v / -vv / v / vv
      > 注:使用 vv 时,显示更为详细的过程信息。
  • 指定解包文件夹选项
    • 该选项可以指定将 tarball 解包到指定的文件夹中去。
    • 选项参数: –directory=DIR / -C DIR
  • 压缩选项
    • 打包技术常与压缩技术相结合,tar 也不例外。通过不同的选项参数,tar 可以结合多种不同的压缩技术。
    • 选项参数:
    选项 含义
    -z / –gzip 为 tar 操作(打包、查看、解包)提供 gzip 压缩技术支持
    -j / –bzip2 为 tar 操作(打包、查看、解包)提供 bzip2 压缩技术支持
    – – zstd 为 tar 操作(打包、查看、解包)提供 zstd 压缩技术支持
    注:Arch 中常用的软件包压缩方式
    -a / –auto-compress 根据 archive 档案的后缀自动选择解压的应用程序

三、tar 的使用

利用功能参数和选项参数的组合,即可进行所需的 tar 操作,如:

tar -cf archive.tar foo bar
tar -tvf archive.tar
tar -xf archive.tar

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注