架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 2125|回复: 3

[linux] Linux 使用 tar 创建归档文件

[复制链接]
发表于 2024-1-1 07:20:00 | 显示全部楼层 |阅读模式
需求:站点目录下面有非常多的文件,如果一个一个的传输会非常慢,如果将文件夹压缩的话又非常耗时,如何将文件夹(包含子文件夹)所有内容处理成一个文件然后再进行传输呢?可以使用 Linux 下面的 tar 命令。

Linux中的tar命令是文件管理中最重要的命令之一。它是 Tape Archive (磁带归档)的缩写,用于创建和提取存档文件。存档文件是一种压缩文件,其中包含一个或多个捆绑在一起的文件,以便更易于存储和移植。在本指南中,我们将通过示例演示如何创建、列出、编辑和提取 tar 存档文件,并介绍一些更常用的 tar 命令选项。

tar 命令的语法


tar 命令选项

  • -c - 这将创建一个存档文件。
  • -x - 该选项提取存档文件。
  • -f - 指定存档文件的文件名。
  • -v - 这会打印终端上任何 tar 操作的详细信息。
  • -t - 这列出了存档文件中的所有文件。
  • -u - 这会存档文件,然后将其添加到现有存档文件中。
  • -r - 这会更新位于 .tar 文件内的文件或目录
  • -z - 使用 gzip 压缩创建 tar 文件
  • -j - 使用 bzip2 压缩创建存档文件
  • -W - -w 选项验证存档文件。


常用命令如下:



参考:

超链接登录可见。
超链接登录可见。




上一篇:CentOS 使用阿里云 NAS 存储
下一篇:Linux 使用 split 文件切割拆分
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2024-1-1 07:20:35 | 显示全部楼层
CentOS中zip压缩和unzip解压缩命令详解
https://www.itsvse.com/thread-3698-1-1.html
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2024-12-13 17:49:34 | 显示全部楼层
options 参数

基本操作选项

-c:创建一个新的归档文件。
-x:解压归档文件。
-t:列出归档文件的内容。
-r:向现有归档文件中追加文件。
-u:仅追加比归档文件中已有文件更新的文件。
-d:找到归档文件中与文件系统不同步的差异。
-A:将一个 .tar 文件追加到另一个 .tar 文件中。

文件选择和排除

-f <file>:指定归档文件的名称(必须放在选项列表的最后)。
-C <directory>:切换到指定目录进行操作。
--exclude=<pattern>:排除匹配指定模式的文件。
--exclude-from=<file>:从指定文件读取要排除的模式。
--exclude-caches:排除目录中的缓存文件。
--exclude-backups:排除以 ~ 结尾的备份文件。
--exclude-vcs:排除版本控制系统生成的文件(如 .git、.svn 等)。

压缩和解压选项

-z:使用 gzip 压缩归档文件。
-j:使用 bzip2 压缩归档文件。
-J:使用 xz 压缩归档文件。
--lzip:使用 lzip 压缩归档文件。
--lzma:使用 lzma 压缩归档文件。
--lzop:使用 lzop 压缩归档文件。
--zstd:使用 zstd 压缩归档文件。
-a:自动选择压缩方式(基于归档文件的扩展名,如 .tar.gz、.tar.bz2 等)。
-I <command>:使用指定的压缩程序进行压缩或解压。

输出和交互选项

-v:显示详细操作过程(verbose)。
--progress:显示进度条(与 -v 一起使用时)。
-w 或 --interactive:在每次操作前询问用户确认。
--checkpoint:在处理每个文件后显示一个检查点。
--checkpoint-action=<action>:在检查点执行指定的动作,如 echo、dot 等。
--totals:在操作结束后显示处理的总字节数。
--verbose:详细显示处理的信息。
--quiet:尽可能少的输出信息。

文件和权限相关选项

-p:保留文件的原始权限(解压时)。
--same-owner:尝试将解压的文件设为原始所有者(需超级用户权限)。
--no-same-owner:不设置文件所有者。
--same-permissions:保留文件的原始权限(与 -p 相同)。
--no-same-permissions:不保留原始权限,使用当前用户的 umask 设置权限。
-m:在解压时不恢复文件的修改时间,而使用当前时间。

归档管理选项

-k 或 --keep-old-files:解压时保留已有文件,不覆盖。
--overwrite:解压时强制覆盖已有文件。
--remove-files:归档成功后删除原始文件。
--delete:从归档文件中删除指定文件(仅限 gnu tar)。
--keep-newer-files:解压时保留比归档中较新的文件。
--listed-incremental=<file>:创建增量备份或从增量备份恢复。

文件系统和设备选项

-L <N>:分割大于 N 字节的归档文件(对于磁带机)。
--tape-length=<number>:指定磁带长度(对于磁带机)。
--multi-volume:创建或恢复多卷归档文件。
-M:与 --multi-volume 一起使用,处理多卷归档文件。
--use-compress-program=<prog>:使用指定的压缩程序。

其他实用选项

--transform=<expression>:重命名归档中的文件。
--strip-components=<number>:解压时剥离指定数量的路径组件。
--ignore-failed-read:忽略读取错误并继续操作。
--occurrence=<number>:在归档中选择第 number 个出现的文件。
-S:处理稀疏文件(仅归档实际使用的块)。
--no-recursion:不递归进入目录。
-h 或 --dereference:归档符号链接指向的文件而非链接本身。

帮助和版本信息

--help:显示帮助信息。
--version:显示 tar 的版本信息。

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2024-12-13 17:59:12 | 显示全部楼层
Windows 使用 tar 对文件夹进行压缩打包
https://www.itsvse.com/thread-10896-1-1.html
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2025-6-15 22:24

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表