网站搜索

适用于 Linux 的 5 个最佳命令行归档工具 - 第 1 部分


在我们的日常生活中,我们会遇到各种平台上的存档文件,无论是 WindowsMacLinux。有多个应用程序可用于所有平台来创建存档文件以及解压缩它们。在Linux平台上工作时,我们需要经常处理归档文件。

在本文中,我们将讨论标准 Linux 发行版上可用的归档工具、它们的功能、示例等。本文分为两部分,每部分包含 5 个命令行归档工具(即总共 10 个最佳命令行归档工具)工具)。

什么是存档文件?

存档文件是一种压缩文件,由一个或多个计算机文件以及元数据组成。

归档的特点

  1. 数据压缩
  2. 加密
  3. 文件串联
  4. 自动提取
  5. 自动安装
  6. 源卷和媒体信息
  7. 文件跨越
  8. 校验和
  9. 目录结构信息
  10. 其他元数据(关于数据的数据)
  11. 错误发现

应用领域

  1. 将计算机文件系统与元数据一起存储。
  2. 在本地传输文件时很有用。
  3. 在通过网络传输文件时很有用。
  4. 软件打包应用。

标准 Linux 发行版上有用的归档应用程序如下:

1.tar命令

tar 是标准的 UNIX/Linux 归档应用程序工具。早期它是一个磁带归档程序,后来逐渐发展成为能够处理各种归档文件的通用归档包。 tar 接受大量带有选项的归档过滤器。

焦油选项

  1. -A :将 tar 文件附加到现有存档中。
  2. -c :创建一个新的存档文件。
  3. -d :将存档与指定的文件系统进行比较。
  4. -j : bzip 存档
  5. -r :将文件追加到现有存档中。
  6. -t:列出现有档案的内容。
  7. -u:更新存档
  8. -x :从现有存档中提取文件。
  9. -z:gzip 存档
  10. -删除:从现有存档中删除文件。
焦油示例

创建 tar 存档文件。

tar -zcvf name_of_tar.tar.gz /path/to/folder

解压缩 tar 存档文件。

tar -zxvf Name_of_tar_file.tar.gz

有关更详细的示例,请阅读 Linux 中的 18 Tar 命令示例。

共享命令

shar 代表 Shell archive 是一个 shell 脚本,执行该脚本将创建文件。 shar 是一个自解压存档文件,它是一个遗留实用程序,需要 Unix Bourne Shell 来解压文件。 shar 的优点是纯文本,但它有潜在危险,因为它输出可执行文件。

共享选项

  1. -o :将输出保存到选项中指定的存档文件中。
  2. -l :按照选项中指定的方式限制输出大小,但不拆分它。
  3. -L :按照指定限制选项中的输出大小并将其拆分。
  4. -n :要包含在 shar 文件标头中的存档名称。
  5. -a :允许自动生成标头。

注意:如果“-l”或“”,则需要“-o”选项使用“-L”选项,如果使用“-a”选项,则需要“-n”选项。

共享示例

创建 Shar 存档文件。

shar file_name.extension > filename.shar

提取 Shar 存档文件。

unshar file_name.shar

3.ar命令

ar 是档案的创建和操作实用程序,主要用于二进制目标文件库。 ar 代表归档器,可用于为任何目的创建任何类型的归档文件,但已很大程度上被“tar”取代,现在它仅用于创建和更新静态库文件。

选项

  1. -d :从存档中删除模块。
  2. -m:移动存档中的成员。
  3. -p :打印存档的指定成员。
  4. -q :快速追加。
  5. -r :插入文件成员进行归档。
  6. -s :将索引添加到存档中。
  7. -a :将新文件添加到存档的现有成员中。
示例

使用“ar”工具和静态库“libmath.a”创建存档,目标文件为“减法”和“除法”。

ar cr libmath.a substraction.o division.o

提取“ar”存档文件。

ar x libmath.a

4.cpio

cpio 代表复制入和出。 Cpio 是 Linux 的通用文件归档器。它被 RedHat Package Manager (RPM) 和 Linux 内核的 initramfs 积极使用,也是 中重要的归档工具Apple 计算机的安装程序(pax)。

cpio 选项

  1. -0 :读取以空字符而不是换行符结尾的文件名列表。
  2. -a:重置访问时间。
  3. -A:追加。
  4. -b:交换。
  5. -d:创建目录。
cpio 示例

创建一个“cpio”存档文件。

cd tecmint
ls

file1.o file2.o file3.o

ls | cpio  -ov > /path/to/output_folder/obj.cpio

提取 cpio 存档文件。

cpio -idv < /path/to folder/obj.cpio

5.压缩包

gzip 是标准且广泛使用的文件压缩和解压缩实用程序。 Gzip 允许文件串联。使用 gzip 压缩文件,输出格式为“*.tar.gz”或“*.tgz”的 tarball。

gzip 选项

  1. –stdout :在标准输出上生成输出。
  2. –to-stdout :在标准输出上生成输出。
  3. –解压缩:解压缩文件。
  4. –uncompress : 解压缩文件。
  5. -d :解压缩文件。
  6. -f:强制压缩/解压。
示例

创建一个“gzip”存档文件。

tar -cvzf name_of_archive.tar.gz /path/to/folder

提取“gzip”存档文件。

gunzip file_name.tar.gz

上面的命令必须在下面的命令之后传递。

tar -xvf file_name.tar

注意:“gzip”的架构和功能使得恢复损坏的“gzipped tar archive”文件变得困难。建议在不同位置对 gzip 压缩的重要文件进行多次备份。

目前为止就这样了。我们将在下一篇文章中讨论适用于 Linux 的其他压缩和解压缩应用程序。在此之前,请继续关注并连接到 Tecmint。不要忘记在下面的评论部分向我们提供您的宝贵反馈。