压缩、解压缩及归档工具

常见的压缩工具有:

 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

 

原文地址:https://www.cnblogs.com/ckh2014/p/14116061.html