常见的压缩工具有:
compres/uncompress:.Z gzip/gunzip/zcat:.gz bzip2/bunzip2/bzcat:.bz2 xz/unxz/xzcat:.xz zip/unzip/:.zip tar,cpio
1.gzip/gunzip/zcat
gzip [OPTION]... FILE... -d:解压缩 -#:1-9,指定压缩比 -c:将结果输出至标准输出 压缩后保留源文件: gzip -c FILES > FILES.gz
zcat:不显示展开的前提下查看文本文件的内容
压缩: [root@localhost gz]# gzip fstab [root@localhost gz]# ls fstab.gz rc.sysinit
解压缩:
[root@localhost gz]# gzip -d fstab.gz [root@localhost gz]# ls fstab rc.sysinit
将压缩结果输出至标准输出 [root@localhost gz]# gzip -c fstab # 原文件不会被压缩成fstab.gz ???_fstab??Kn? @?>?H]$?b???HYT???n?̐X `I??;?&?Rk????a9yH??o?t??px??< ?`??F
压缩后保留原文件 [root@localhost gz]# gzip -c fstab > fstab.gz [root@localhost gz]# ls fstab fstab.gz rc.sysinit
不展开的情况下使用zcat查看压缩文件中原文件内容 [root@localhost gz]# zcat fstab.gz # # /etc/fstab # Created by anaconda on Thu Nov 26 21:54:33 2020
gunzip解压缩 [root@localhost gz]# gunzip fstab.gz [root@localhost gz]# ls fstab rc.sysinit
多个文件分别压缩 [root@localhost gz]# gzip fstab rc.sysinit [root@localhost gz]# ls fstab.gz rc.sysinit.gz
查看压缩文件详情 [root@localhost gz]# gzip -l fstab.gz compressed uncompressed ratio uncompressed_name 391 863 58.4% fstab
对多个gzip文件分别解压缩 [root@localhost gz]# gzip -d fstab.gz rc.sysinit.gz [root@localhost gz]# ls fstab rc.sysinit
2.bzip2/bunzip/bzcat
bizp2 [OPTION]... FILE... -d:解压缩 -k:压缩后保持原文件 -#:1-9,指定压缩比 bzcat:不展开的前提下查看文本文件内容
压缩 [root@localhost gz]# bzip2 fstab [root@localhost gz]# ls fstab.bz2 rc.sysinit
解压缩 [root@localhost gz]# bzip2 -d fstab.bz2 [root@localhost gz]# ls fstab rc.sysinit
压缩后保留原文件 [root@localhost gz]# bzip2 -k fstab [root@localhost gz]# ls fstab fstab.bz2 rc.sysinit
分别压缩多个文件 [root@localhost gz]# bzip2 fstab rc.sysinit [root@localhost gz]# ls fstab.bz2 rc.sysinit.bz2
分别解压缩多个文件 [root@localhost gz]# bunzip2 fstab.bz2 rc.sysinit.bz2 [root@localhost gz]# ls fstab rc.sysinit
不展开的情况下查看文本文件内容 [root@localhost gz]# bzcat fstab.bz2
3.xz/unxz/xzcat
xz [OPTION]... FILE... -k:压缩后保留原文件 -d:解压缩 -#:1-9,指定压缩百分比
xzcat:不展开的情况下查看文本文件内容
压缩 [root@localhost gz]# xz fstab [root@localhost gz]# ls fstab.xz rc.sysinit
解压缩 [root@localhost gz]# unxz fstab.xz [root@localhost gz]# ls fstab rc.sysinit
分别对多个文件进行压缩 [root@localhost gz]# xz fstab rc.sysinit [root@localhost gz]# ls fstab.xz rc.sysinit.xz
分别对多个压缩文件进行解压缩 [root@localhost gz]# xz -d fstab.xz rc.sysinit.xz [root@localhost gz]# ls fstab rc.sysinit
压缩后保留原文件 [root@localhost gz]# xz -k fstab [root@localhost gz]# ls fstab fstab.xz rc.sysinit
不展开的前提下查看文本文件内容 [root@localhost gz]# xzcat fstab.xz
4.zip/unzip/zcat
zip [OPTION] FILE.zip FILE... -d:不解压的情况下删除里面的文件 -o:不提示的情况下覆盖文件
-#: 1-9,指定压缩百分比
zcat:不展开的情况下查看文本文件内容
压缩: zip压缩会保留原文件 [root@localhost gz]# zip fzip.zip fstab rc.sysinit adding: fstab (deflated 57%) adding: rc.sysinit (deflated 67%) [root@localhost gz]# ls fstab fzip.zip rc.sysinit
不解压的情况下删除压缩文件中的文件 [root@localhost gz]# zip fzip.zip -d fstab deleting: fstab
更新压缩文件增加文件fstab [root@localhost gz]# zip fzip.zip add fstab zip warning: name not matched: add adding: fstab (deflated 57%)
解压缩 [root@localhost gz]# ls fzip.zip [root@localhost gz]# unzip fzip.zip Archive: fzip.zip inflating: rc.sysinit inflating: fstab [root@localhost gz]# ls fstab fzip.zip rc.sysinit
不解压缩的情况下查看文本文件内容:查看到的是所有文件的内容 zcat fzip.zip
5.tar
tar [OPTION]... FILE.tar FILE1 FILE2...
-c:创建归档
-x:展开归档
-t:列出归档文件中的文件列表
--delete:从归档文件中删除文件
-r:将文件添加到归档文件的末尾
-f:归档文件路径
-C:将展开的文件保存至指定目录下
结合压缩工具,实现归档并压缩
-z:gzip,-j:bzip2,-J:xz,-Z:compress
创建归档 [root@localhost gz]# tar -c -f a.tar fstab rc.sysinit [root@localhost gz]# ls a.tar fstab rc.sysinit
解档 [root@localhost gz]# ls a.tar [root@localhost gz]# tar -xf a.tar [root@localhost gz]# ls a.tar fstab rc.sysinit
不展开的情况下查看文件列表 [root@localhost gz]# tar -t -f a.tar fstab rc.sysinit
展开归档,将文件展开到指定目录 [root@localhost gz]# tar -xf a.tar -C /tmp/gz/b/ [root@localhost gz]# ls b fstab rc.sysinit
不展开的情况下删除归档中文件 [root@localhost gz]# tar -f a.tar --delete rc.sysinit [root@localhost gz]# tar -tf a.tar fstab
不展开的情况下,添加文件到归档 [root@localhost gz]# tar -f a.tar -r b [root@localhost gz]# tar -tf a.tar fstab b/ b/fstab b/rc.sysinit
归档并压缩成.gz格式的文件 [root@localhost b]# tar -zcf b.tar.gz fstab rc.sysinit [root@localhost b]# ls b.tar.gz fstab rc.sysinit
解压缩并展开归档到gz目录
[root@localhost b]# tar -zxf b.tar.gz -C gz [root@localhost b]# ls gz/ fstab rc.sysinit
归档并压缩成bzip2格式的文件 [root@localhost b]# tar -jcf bb.tar.bz2 fstab rc.sysinit [root@localhost b]# ls bb.tar.bz2
解压并展开归档
[root@localhost b]# tar -jxf bb.tar.bz2 -C bz [root@localhost b]# ls bz fstab rc.sysinit
创建归档并压缩成xz格式 [root@localhost b]# tar -Jcf xz.tar.xz fstab rc.sysinit [root@localhost b]# ls xz.tar.xz xz
解压缩并展开归档到xz文件中
[root@localhost b]# tar -Jxf xz.tar.xz -C xz [root@localhost b]# ls xz fstab rc.sysinit