linux压缩打包归档

Posted

tags:

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

#压缩工具

一、compress/uncompress

       compress是个历史悠久的压缩程序,文件经它压缩后,其名称后面会多出".Z"的扩展名。当要解压缩时,可执行uncompress指令。事实上uncompress是指向compress的符号连接,因此不论是压缩或解压缩,都可通过compress指令单独完成。

compress 

1.1、压缩方式

compress filename(文件压缩后权限不变,原文件丢失)

compress -c filename > filename.Z   原文件保留,但权限根据umask来设置

示例如下图所示。

技术分享图片

1.2、解压方式

权限不变,原文件不会被保留。

uncompress filename.Z 

        compress -d filename.Z   

当文件包处于解压状态时,压缩包保留,但权限根据umask来设置

uncompress -c filename.Z > filename 

        compress -dc filename.Z > filename  

        zcat filename.Z > filename

示例如下图所示。

技术分享图片

-v 压缩或解压时,可显示详细进度过程 

二、gzip/gunzip

     gzip用来压缩大的、较少使用的文件以节省磁盘空间,减少文件大小有两个明显的好处,不仅可以减少存储空间还可

通过网络传输文件时,减少传输的时间。

2.1、压缩方式

gzip filename   权限不变,原文件丢失。

        技术分享图片

gzip -#(1-9)  filename  数字越小,压缩速度越快其压缩比越低;数字越大,压缩速度越慢其压缩比越高,生成的

压缩文件越小,默认压缩比为6.示例如下图。

        技术分享图片

gzip -c filename > filename.gz   原文件保留,但权限根据umask来设置(同compress类似)

2.1、解压方式

权限不变,原文件丢失

gunzip filename.gz 或 gzip -d filename.gz   权限不变,原文件丢失。示例如下图。

技术分享图片


原文件保留,但权限根据umask来设置

gunzip -c filename.gz > filename 示例如下图。

技术分享图片

gzip -dc filename.gz > filename  

         zcat filename.gz > filename

三、bzip2

bzip2命令用于创建和管理(包括解压缩)“.bz2”格式的压缩包,与compress、gzip相比压缩比更大,对纯文本文件压缩比较给力。

3.1、压缩方式

bzip2 filename 权限不变,原文件消失 

          -k filename 权限不变,原文件保留,该命令解压时也可以使用。

          -# (1-9) filename 数字越小压缩速度越快且压缩比越低;数字越大压缩速度越慢且压缩比越高,

  生成的压缩文件越小,默认压缩比为9.(同gzip类似)

          -c filename>filename.2 原文件保留,但权限根据umask来设置     技术分享图片

3.2、解压方式

bunzip -k filename.bz2 或 bzip2 -kd filename.bz2   权限不变,压缩包保留

            -c filename.bz2 > filename 原文件保留,权限改变

                    -dc filename.bz2 > filename 权限保留,原文件也保留

        bzcat filename.bz2 > filename 压缩包保留,但权限根据umask来设置

四、xz

一种新型压缩工具更方便实用,扩展名以xz结尾。

4.1、压缩方式

xz filename 权限不变,原文件消失 

技术分享图片

xz -k filename 权限不变,原文件保留,可用在压缩和解压缩

xz -# (1-9) filename 数字越小,压缩速度越快,压缩比越低,数字越大,压缩速度越慢,压缩比越高,生成

的压缩文件越小,默认压缩比为6.

xz -c filename > filename.xz原文件保留,但权限根据umask来设置

4.2、解压方式

权限不变,压缩包保留

        unxz -k filename.xz 或 xz -kd filename.xz   

        unxz -c filename.xz > filename 

        xz -dc filename.xz > filename 

技术分享图片

技术分享图片

压缩包保留,但权限根据umask来设置       

 xzcat filename.xz > filename


#打包工具


打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。

五、zip

      zip命令可以用来解压缩对文件进行打包操作。文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。

              打包格式:zip -r  文件名 要打包的文件名(-r表示递归)

              解压格式:unzip  要解压的包名

技术分享图片

下图为管道解压方式,不是重点,可以了解。

技术分享图片


六、tar

       tar命令可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或

者向档案中加入新的文件。把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输

是非常有用的。

-c 创建包

-v 打包或解包显示过程

-f 指定文件

-t 查看包中的内容

-x 从包中解开文件,可解开指定文件或全部文件

-xf 包名    要解压的文件名 

-xf 包名    解出全部文件

技术分享图片

打包 -cvf组合使用

技术分享图片

用-t选项查看包中内容。

技术分享图片

-r 往归档包中增加文件

--delete 从归档包中删除文件

-C 与-x 配合,指定解压到的目的目录

-j 压缩与解压缩时使用bzip2

-z 压缩与解压缩时使用gzip

-J 压缩与解压缩时使用xz

示例组合bzip2实现一步到位打包并压缩,tar jcvf 文件名.tar.bz2 需要打包的文件,如下图。

技术分享图片

tar jxvf 

        tar zxvf 

        tar Jxvf    直接用 tar xvf 

tar较智能指定打包方式时用bzip2前加-j,gzip时tar参数加-z,用xz时tar时属性假-J,为了方便使用直接用tar xvf

技术分享图片


以上是关于linux压缩打包归档的主要内容,如果未能解决你的问题,请参考以下文章

linux压缩打包归档

Linux归档压缩文件(tar | gzip)

02-Linux系统压缩打包

linux介绍二十一-tar命令:压缩解压缩

Linux大神笔记分享:文件的归档和压缩

Linux文件归档压缩与解压缩