码迷,mamicode.com
首页 > 系统相关 > 详细

linux压缩、解压和归档

时间:2016-02-16 01:18:22      阅读:401      评论:0      收藏:0      [点我收藏+]

标签:linux   center   color   style   

linux压缩、解压和归档

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.    默认压缩或者解压会删除原有的文件

其中bz2xz可以保留原文件 使用-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

技术分享

[root@fireward 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的内容

[root@fireward yasuo]# bzcat http.bz2

 

xz

xz命令

功能:压缩解压缩

语法:

            xz /path/to/somefile

常用的选项

                        -d :表示解压缩 == bunzip2

                        -#:1-9 指定压缩比,默认是6

                        -k :保留原文件

例子:

1.压缩文件http

技术分享

2.解压http.xz

技术分享

3.查看压缩后的文件http.xz

[root@fireward yasuo]# xzcat http.xz

3      归档

归档类不会删除原文件

归档文件建议把后缀名定义为zip tartar.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.展开归档到当前目录

[root@fireward 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.展开解压到当前目录:

技术分享

 

                       

 

linux压缩、解压和归档

标签:linux   center   color   style   

原文地址:http://mygbd.blog.51cto.com/8135357/1742337

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!