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格式;
风雨路遥同珍重,不负尘缘不负卿