首页 > 资讯 > 数码知识内容详情

tar命令 - 压缩和解压缩文件 2024-01-09 09:43:42 网络

tar命令的功能是用于压缩和解压缩文件,能够制作出Linux系统中常见的.tar、.tar.gz、.tar.b

tar命令的功能是用于压缩和解压缩文件,能够制作出Linux系统中常见的.tar、.tar.gz、.tar.bz2等格式的压缩包文件。对于RHEL7、CentOS7版本以后的系统,解压缩时可以不添加格式参数(如z或j),系统也能自动进行分析并解压。

把要传输的文件先进行压缩再进行传输,能够很好地提高工作效率,方便分享。

语法格式:tar 参数 压缩包名 [文件或目录名]

常用参数:

-A 添加文件到已存在的压缩包
-B 设置区块大小
-c 创建新的压缩包
-C 解压缩到指定目录
-d 记录文件的差别
-f 指定压缩包文件
-j 使用bzip2压缩格式
-l 设置文件系统边界
-m 保护文件不被覆盖
-N 只将较新日期的文件保存到压缩包中
-p 保留原来的文件权限与属性
-P 使用绝对路径
-t 显示压缩包的内容
-u 更新压缩包内的文件
-v 显示执行过程详细信息
-w 确认压缩包的完整性
-x 从压缩包内提取文件
-z 使用gzip压缩格式
--exclude 排除指定的文件不压缩
--remove-files 操作完成后删除源文件

参考示例

使用gzip压缩格式对指定目录进行打包操作,显示压缩过程,压缩包规范后缀为.tar.gz:

[root@linuxcool ~]# tar czvf File.tar.gz /etc
tar: Removing leading `/' from member names
/etc/
/etc/mtab
/etc/fstab
/etc/crypttab
/etc/resolv.conf
/etc/dnf/
………………省略部分输出信息………………

使用bzip2压缩格式对某个目录进行打包操作,显示压缩过程,压缩包规范后缀为.tar.bz2:

[root@linuxcool ~]# tar cjvf File.tar.bz2 /etc
tar: Removing leading `/' from member names
/etc/
/etc/mtab
/etc/fstab
/etc/crypttab
/etc/resolv.conf
/etc/dnf/
/etc/dnf/modules.d/
/etc/dnf/modules.d/container-tools.module
………………省略部分输出信息………………

将当前工作目录内所有以.cfg为后缀的文件打包,不进行压缩:

[root@linuxcool ~]# tar cvf File.tar *.cfg
anaconda-ks.cfg
initial-setup-ks.cfg

将当前工作目录内的所有以.cfg为后缀的文件打包,不进行压缩,并删除原始文件:

[root@linuxcool ~]# tar cvf File.tar *.cfg --remove-files
anaconda-ks.cfg
initial-setup-ks.cfg

解压指定压缩包到当前工作目录:

[root@linuxcool ~]# tar xvf File.tar 
anaconda-ks.cfg
initial-setup-ks.cfg

解压指定压缩包到/etc目录:

[root@linuxcool ~]# tar xvf File.tar -C /etc
anaconda-ks.cfg
initial-setup-ks.cfg

查看某个压缩包内文件信息(无需解压):

[root@linuxcool ~]# tar tvf File.tar 
-rw------- root/root      1256 2023-05-18 08:42 anaconda-ks.cfg
-rw-r--r-- root/root      1585 2023-05-18 08:43 initial-setup-ks.cfg

与该功能相关的Linux命令:

  • semanage命令 – 查询与修改安全上下文
  • xzdiff命令 – 比较xz压缩文件
  • mattrib命令 – 更改或显示MS-DOS文件的属性
  • rpmquery命令 – 查询信息
  • traceroute命令 – 追踪网络数据包传输路径
  • vipw命令 – 编辑某些配置文件
  • fsview命令 – 文件系统浏览器
  • newusers命令 – 批量创建或更新用户信息
  • cdp命令 – 播放CD音乐
  • kbdconfig命令 – 设置键盘类型

相关标签: 数码科技