1 简介
压缩格式 gz bz2 xz zip Z
压缩算法:算法不同,压缩比也不相同
压缩比:(压缩前的文件大小-压缩后的文件大小)/压缩前的文件大小
文本文件压缩比大,图片视频比较小
xz>bz2>gz2>Z #这个对于大文件生效,小文件未必
常用的压缩解压工具:
compress/uncompress .Z (比较老的压缩算法,比较少使用了)
gzip/gunzip .gz (不支持目录压缩)
bzip2/bunzip2 .bz2不支持目录压缩)
xz/unxz .xz (不支持目录压缩)
zip/unzip .zip (支持压缩目录)
注意:
1. 默认压缩或者解压会删除原有的文件
其中bz2和xz可以保留原文件 使用-k命令,但是gz不可以
2. 由于解压都可以使用压缩命令加选项-d ,因此建议记住一个命令即可
3. 压缩会自动加上后缀名,解压会去掉后缀名
压缩后的文件的查看命令:
zcat:查看gz压缩
bzcat:查看bz压缩
xzcat :查看xz压缩的文件
打包归档工具
zip/unzip .zip (打包又支持压缩)
tar (本身是一个打包工具,可以结合上面的压缩工具一起打包压缩,最常用)
cpio(复制文件归档)
建议:压缩的文件使用其官方后缀名,这样便于辨别,也可以节省命令.
2 压缩
gzip/gunzip
gzip/gunzip命令
功能:压缩解压缩
语法:
gzip /path/to/somefile
常用的选项
-d :表示解压缩 ==gunzip
-#:1-9 指定压缩比,默认是6
-r :递归压缩解压缩当前目录下的所有文件,是单个文件,单个文件压缩,没太大作用
例子:
1.压缩文件http
2.解压文件http
[[email protected] yasuo]# gunzip http.gz
3.查看压缩后的文件内容
bzip2
bzip2命令
功能:压缩解压缩
语法:
bzip2 /path/to/somefile
常用的选项
-d :表示解压缩 == bunzip2
-#:1-9 指定压缩比,默认是6
-k :保留原文件
例子:
1.压缩文件http,保留原文件
2.解压http.bz2,不保留原文件
3.查看压缩后的文件http.bz2的内容
[[email protected] yasuo]# bzcat http.bz2
xz
xz命令
功能:压缩解压缩
语法:
xz /path/to/somefile
常用的选项
-d :表示解压缩 == bunzip2
-#:1-9 指定压缩比,默认是6
-k :保留原文件
例子:
1.压缩文件http
2.解压http.xz
3.查看压缩后的文件http.xz
[[email protected] yasuo]# xzcat http.xz
3 归档
归档类不会删除原文件
归档文件建议把后缀名定义为zip tar,tar.gz tar.bz2.tar.xz等
zip
zip命令
功能:归档并压缩,保留原文件,压缩比小
语法:
zip filename.zip file1 file2 ... (直接加目录也可以,但是要指定directory/* 如果有子目录,则也要指定 directory/zidiretory/*,否则只是备份了目录而已),如下例子1:
unzip filename.zip
常用的选项
-d directory :指定解压到特定的目录下
1.归档并压缩目录下所有文件(默认保留所有原文件)
2.解压所有文件到当前目录,(如果是解压到指定的目录,则要有展开的子目录存在,不然会报错)
tar
tar命令
功能:归档工具,并且可以结合压缩工具压缩文件
语法:
归档 tar [OPTIONS] -c -f TARFILE.tar /PATH/TO/FILE…
展开归档 tar -x -f TARFILE.tar [-C /PATH/TO/DIR]
常用的选项
-c :归档
-x :展开归档
-f :归档后的文件
-t :查看了归档了什么文件
--xattrs:归档时,保留文件的扩展属性信息(备份常用)
-C directroy :可以指定解压的目录,默认是当前目录
注意:1.多个选项可以合并,但是-f 后面一定要跟文件,-xf –cf
2.tar –xf ==tar xf ,也就是-可以省略
例子:
1.归档指定目录下的所有文件
2.展开归档到当前目录
[[email protected] yasuo]# tar xf message.tar -C .
#假如要解压到其他的目录下,则其他目录下的子目录要事先创建好,不然会报错,无法展开这部分内容
3.查看归档了什么文件
tar归档并压缩
tar命令
功能:归档压缩
语法:
gzip压缩:
-zcf:归档并调用gzip压缩
-zxf:调用gzip解压缩并展开归档
后缀名为.tar.gz
bzip2压缩:
-jcf:归档并调用bzip2压缩
-jxf:调用bzip2解压缩并展开归档
后缀名为.tar.bz2
xz压缩:
-Jcf:归档并调用xz压缩
-Jxf:调用xz解压缩并展开归档
后缀名为.tar.xz
选项:
-z, --gzip
filter the archive through gzip
-j, --bzip2
filter the archive through bzip2
-J, --xz
filter the archive through xz
注意:如果文件有按照官方的后缀名定义,则展开解压不需要指定对应的算法的选项
统一为tar –xf 即可
例子:
1.归档压缩为三种格式:
有图发现xz压缩比越小,事实上是xz>bz2>gz,但是小文件未必,这个在前文讲解到了。
2.展开解压到当前目录: