tar命令 – 压缩和解压缩文件

ID:157 / 打印

tar命令的功能是压缩和解压缩文件,能够制作出Linux系统中常见的tar、tar.gz、tar.bz2等格式的压缩包文件。对于RHEL 7、CentOS 7版本及以后的系统,解压缩时不添加格式参数(如z或j),系统也能自动进行分析并解压。把要传输的文件先压缩再传输,能够很好地提高工作效率,方便分享。

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

常用参数:

-A添加文件到已存在的压缩包 -p保留原来的文件权限与属性
-B设置区块大小-P使用绝对路径
-c创建新的压缩-t显示压缩包的内容
-C解压缩到指定目录-u更新压缩包内的文件
-d记录文件的差别-v显示执行过程详细信息
-f指定压缩包文件-w确认压缩包的完整性
-j使用bzip2压缩格式-x从压缩包内提取文件
-l设置文件系统边界-z使用gzip压缩格式
-m保护文件不被覆盖--exclude排除指定的文件不压缩
-N只将较新日期的文件保存到压缩包中--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
上一篇: readonly命令 – 标记shell变量或函数为只读
下一篇: return命令 – 从函数中退出并返回数值

作者:admin @ 24资源网   2024-08-31

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。