Centos7—tar 软件包参数管理

Centos7—tar 软件包参数管理以下是 tar 命令的详细参数用法及示例 整理自权威技术文档和常用实践指南 tar Tape Archive 是 Linux Unix 中用于文件归档和压缩的核心工具 支持多种操作模式和压缩算法

大家好,欢迎来到IT知识分享网。

以下是 tar 命令的详细参数用法及示例,整理自权威技术文档和常用实践指南。tar(Tape Archive)是 Linux/Unix 中用于文件归档和压缩的核心工具,支持多种操作模式和压缩算法。


一、核心操作参数

以下参数互斥(同一命令只能使用其中一个):

  1. -c(创建归档)
    将文件/目录打包成 .tar 文件。
tar -cvf archive.tar file1.txt dir/ # 打包 file1.txt 和 dir 目录,显示过程(-v)如图1所示
Centos7—tar 软件包参数管理

图1

  1. -x(提取归档)
    解压归档文件到当前目录或指定路径。
tar -xvf archive.tar # 解压到当前目录 如图2所示 tar -xvf archive.tar -C /data# 解压到 /data 目录(-C 指定路径)如图3所示
Centos7—tar 软件包参数管理

图2

Centos7—tar 软件包参数管理

图3

  1. -t(列出内容)
    查看归档内的文件列表(不解压)。
tar -tvf archive.tar # 显示文件详情(权限、时间等)如图4所示
Centos7—tar 软件包参数管理

图4

  1. -r(追加文件)
    ➕ 向已有归档中添加新文件。
tar -rvf archive.tar file.txt # 将 file.txt 追加到 archive.tar如图5所示
Centos7—tar 软件包参数管理

图5

  1. -u(更新文件)
    仅添加比归档内版本更新的文件。
tar -uvf archive.tar modified.txt # 若 modified.txt 比归档内版本新,则更新如图6所示
Centos7—tar 软件包参数管理

图6

  1. -d(比较差异)
    对比归档内容与当前文件的差异。
tar -df archive.tar # 检查归档与本地文件的差异
  1. –delete(删除文件)
    ️ 从归档中移除指定文件。
tar --delete -f archive.tar file.txt # 从 archive.tar 中删除 file.txt如图7所示
Centos7—tar 软件包参数管理

图7


二、压缩选项

  1. -z(gzip 压缩)
    ⚡ 使用 gzip 压缩/解压(生成 .tar.gz)。
tar -czvf archive.tar.gz data/ job/ modified.txt # 压缩为 gzip 格式 如图8所示 tar -xvf archive.tar.gz # 解压 gzip 归档如图9所示
Centos7—tar 软件包参数管理

图8

Centos7—tar 软件包参数管理

图9

  1. -j(bzip2 压缩)
    ⚡ 使用 bzip2 压缩/解压(生成 .tar.bz2)。
tar -cjvf archive.tar.bz2 * # 压缩为 bzip2 格式 如图10所示 tar -xjvf archive.tar.bz2 # 解压 bzip2 归档 如图11所示
Centos7—tar 软件包参数管理

图10

Centos7—tar 软件包参数管理

图11

  1. -J(xz 压缩)
    ⚡ 使用 xz 压缩(生成 .tar.xz),压缩率高但耗时长。
tar -cJvf archive.tar.xz * # 压缩为 xz 格式 如图12所示 tar -xJvf archive.tar.xz # 解压 xz 归档 如图13所示
Centos7—tar 软件包参数管理

图12

Centos7—tar 软件包参数管理

图13


三、路径与目录控制

  1. -C(切换目录)
    在操作前切换到指定目录。
tar -czvf backup.tar.gz -C /data # 打包 /data 而非完整路径
  1. -P(保留绝对路径)
    默认移除路径开头的 /,此参数保留绝对路径(⚠️ 解压时可能覆盖系统文件)。
tar -cvPf backup.tar /data # 归档保留绝对路径 如图14所示
Centos7—tar 软件包参数管理

图14


四、筛选与排除

  1. –exclude=PATTERN
    排除匹配模式的文件/目录。
tar -czvf backup.tar.gz --exclude='*.txt' /data # 排除所有 .txt 文件 如图15所示
Centos7—tar 软件包参数管理

图15

  1. -X(从文件读取排除列表)
    按文件内的模式排除。
tar -czvf backup.tar.gz -X exclude.list /data/ # exclude.list 中每行写一个排除模式 如图16所示
Centos7—tar 软件包参数管理

图16


五、高级功能

  1. -p(保留权限)
    解压时保留文件权限(常用于系统备份)。
tar -xvpf backup.tar.gz # 解压并恢复原始权限 如图17所示
Centos7—tar 软件包参数管理

图17

  1. –wildcards(通配符匹配)
    配合 -t/-x 使用通配符筛选文件。
tar -xvf backup.tar.gz --wildcards '*.txt' # 仅解压 .txt 文件 如图18所示
Centos7—tar 软件包参数管理

图18

  1. -M(多卷归档)
    拆分大文件到多卷(如备份到多个磁盘)。
tar -cvMf archive_part.tar data/ # 按默认大小分卷(需交互确认)如图19所示
Centos7—tar 软件包参数管理

图19


六、实用示例场景

  1. 备份并压缩整个目录
tar -czvf home_backup.tar.gz /home # gzip 压缩 /home 目录 如图20所示
Centos7—tar 软件包参数管理

图20

  1. 解压到指定目录并保留权限
tar -xzvpf backup.tar.gz -C /restore如图21所示
Centos7—tar 软件包参数管理

图21

  1. 仅更新归档中的新文件
tar -uvf archive.tar $(find are/ -mtime -1) # 追加 dir/ 下 24 小时内修改的文件 如图22所示
Centos7—tar 软件包参数管理

图22

  1. 排除多个文件类型
tar -czvf src.tar.gz /data/ --exclude='*.tmp' --exclude='*.bak'如图23所示
Centos7—tar 软件包参数管理

图23

  1. 验证归档完整性
tar -tf archive.tar > /dev/null && echo "Archive OK" # 无报错则完整

参数速查表

类型

参数

作用

核心操作

-c

创建归档

-x

解压归档

-t

查看内容

压缩格式

-z

gzip 压缩(.tar.gz)

-j

bzip2 压缩(.tar.bz2)

-J

xz 压缩(.tar.xz)

文件管理

-r

追加文件

-u

更新文件

–delete

删除归档内文件

路径控制

-C

指定解压/打包目录

-P

保留绝对路径

筛选

–exclude

按模式排除文件

-X

从文件读取排除列表

高级功能

-p

保留文件权限

-v

显示详细过程

提示:完整参数列表可通过 tar –help 查看。使用压缩参数时(如 -z),需确保系统已安装对应压缩工具(如 gzip、bzip2)。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/183855.html

(0)
上一篇 2025-07-23 11:33
下一篇 2025-07-23 11:45

相关推荐

发表回复

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

关注微信