Linux压缩工具

Posted sstjustdoit

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux压缩工具相关的知识,希望对你有一定的参考价值。

一、gzip/gunzip/zcat

gzip, gunzip, zcat - compress or expand files

gzip  [ option .... ]  [ filenames ...  ]
-d:解压缩,相当于gunzip
-#:指定压缩比(1-9),默认为6,数字越大压缩比越大,消耗的cpu越多,压缩后的空间越小
-c:压缩后标准输出,且保留源文件;所以要跟> 重定向输出
   gzip -c file > file.gz    压缩文件且保留源文件

二、bzip2/bunzip2/bzcat/bzip2recover

bzip2, bunzip2 - a block-sorting file compressor, v1.0.6
bzcat - decompresses files to stdout
bzip2recover - recovers data from damaged bzip2 files

bzip2 [ option .... ]  [ filenames ...  ]
-d:解压缩,相当于bunzip2
-#:指定压缩比(1-9),默认为6,数字越大压缩比越大,消耗的cpu越多,压缩后的空间越小
-k:keep,保留源文件,无须输出重定向

三、xz, unxz, xzcat, lzma, unlzma, lzcat

xz, unxz, xzcat, lzma, unlzma, lzcat - Compress or decompress .xz and .lzma files
xz [option...]  [file...]
-d:解压缩,相当于bunzip2
-#:指定压缩比(1-9),默认为6,数字越大压缩比越大,消耗的cpu越多,压缩后的空间越小
-k:keep,保留源文件,无须输出重定向

四、打包tar

以上3个压缩工具只能针对文件操作,无法对文件夹进行压缩,因此,在linux中对文件夹有个归档打包操作,然后再进行压缩。

归档:tar、cpio ;归档不会删除源文件,其主要目的是用于备份数据

tar
tar [ OPTION... ]  [ FILE ]...   (注意:tar命令选项可以忽略“ - ”)
创建归档
-c -f  /PATH/TO/SOMEFILE.tar  FILE... 
-cf /PATH/TO/SOMEFILE.tar  FILE... 

-x 展开归档
-xf  /PATH/FROM/SOMEFILE.tar 
-xf  /PATH/FROM/SOMEFILE.tar  -C  /PATH/TO/SOMEDIR   展开归档至某个文件

-t 在不展开归档的情况下查看归档中的文件列表
-tf  /PATH/TO/SOMEFILE.tar

补充:
tar -r -f   /PATH/TO/SOMEFILE.tar   FILE...   追加文件至归档;但不支持对压缩文件追加


归档完成后通常需要压缩,结果此前的压缩工具,就能实现压缩多个文件了;
(4) 归档压缩
-z:gzip 
-zcf   /PATH/TO/SOMEFILE.tar.gz  FILE...
-zxf  /PATH/TO/SOMEFILE.tar.gz   解压缩并展开归档
                    
-j:bzip2
-jcf
-jxf
                    
-J: xz
-Jcf
-Jxf

五、练习:

1.下载redis-3.0.2.tar.gz,展开至/data目录;而后得新创建压缩为xz格式;

tar -xvf  redis-3.0.2.tar.gz    # 解压缩redis-3.0.2.tar.gz 至当前目录

tar -Jcf  redis-3.0.3.tar.xz    redis-3.0.3   # 在当前目录下重新创建压缩该文件为xz格式;

以上是关于Linux压缩工具的主要内容,如果未能解决你的问题,请参考以下文章

15Linux文档的压缩与打包

btrfs及压缩工具

linux下的压缩工具

linux文件管理--压缩打包

Linux压缩打包介绍,gzip压缩工具,bzip2压缩工具,xz压缩工具

Linux 入门记录:十九Linux 包管理工具 RPM