详解Linux压缩的多种方法

运维 系统运维
本文讲解有关Linux压缩的命令;其中包括gzip命令、zip/unzip命令、zip2命令等的详细介绍及使用,unzip命令用于将压缩文件解压。

Linux经过长时间的发展,很多用户都了解关于linux压缩方面的要领,这里我发表一下个人理解,和大家讨论讨论。linux压缩工具有很多,下面列常用的压缩工具及其产生文件的后缀:gzip/gunzip后缀名为.gz;compress/uncompress后缀名为.Z;zip/unzip后缀名为.zip;bzip2/bunzip2后缀名为.bz2;lha,后缀名为.lzh。Linux压缩工具中最常用的包括gzip、zip和bzip2三种,下面分别讲述这三种最常用的压缩工具。

1.gzip命令
◆对文件进行压缩的目的有两个:一是可以减少存储空间;二是通过网络传输文件时,可以减少传输的网络开销。gzip是Linux最常用的软件压缩工具,在Linux终端输入mangzip命令降显示gzip的帮助文档。该命令的使用形式为:gzip[选项]压缩或解压缩的文件名。
◆下面给出使用gzip命令压缩文件的例子,压缩当前目录下的所有文件,并且显示压缩比,显示已经替代原来的文件:#gzip-v*,其中-v参数表明显示压缩比和文件名。需要注意的是,gzip只能对单个文件压缩,不能像Winzip和Winrar一样,可以将多个文件压缩成一个.zip文件或.rar文件。正因为如此,Linux才提供了tar命令,用于将若干文件或文件夹打包成一个文件,然后再压缩成一个.gz文件。接着是解压缩文件的例子,对当前目录下所有压缩的文件解压缩,并列出详细的信息:#gzip-dv*。
◆另外,显示压缩文件的内容信息:可以用带-l参数的gzip命令显示gz文件的内容。这只是显示文件内容,并不实际解压缩文件:#gzip-l*。
◆此外,在tar命令中也可以直接嵌入gzip命令,从而直接将若干文件或文件夹处理成一个.tar.gz文件。在这个处理过程中,系统先将若干文件或文件夹打包成.tar,然后将生成的.tar文件压缩成.tar.gz文件。例如将当前目录下所有文件打包并压缩成gong.tar.gz并显示处理进度:#tarcvfzgong.tar.gz./*。

2.zip/unzip命令
◆zip程序位于/usr/bin目录中,可将文件压缩成.zip文件以节省硬盘空间,而当需要的时候又可将linux压缩文件解开。unzip命令用于将压缩文件解压。zip命令的使用形式为:

◆zip[选项]压缩后文件名待压缩文件或文件夹,其中:参数选项表明要完成的操作类型,压缩后的文件名是某个合法的文件名,其后缀为zip,待压缩文件或文件夹指明须要进行压缩的文件或文件夹,可以是多个文件或文件夹。

◆下面给出使用该命令压缩文件或文件夹的例子。例如将当前目录下的所有文件和文件夹全部压缩成gong.zip压缩文件,-r表示递归压缩子目录下所有文件:#zip-rgong.zip./*。用带-v参数选项可以查看zip文件的内容,这点类似于带t参数选项的tar命令。只不过前者用于显示压缩的zip文件的内容,后者用于显示tar文件的内容。与带t参数选项的tar命令类似,带v参数选项的zip命令实际上并不解压缩文件,例如查看gong.zip文件的内容:#zip-vgong.zip。

◆用带-d参数选项的zip命令可以从zip压缩文件中删除某个文件,而使用带-m的zip命令可以向zip压缩文件添加某个文件。例如删除压缩文件中smart.txt文件:#zip-dgong.zipsmart.txt;向压缩文件中gong.zip中添加rpm_info.txt文件:#zip-mgong.zip./rpm_info.txt。

◆此外,unzip命令用于扩展名为zip的压缩文件的解压缩,同时,Windows下用压缩软件Winzip压缩的文件在Linux系统下也可以用unzip命令解压缩。unzip命令的语法如下:unzip[参数选项]压缩文件名.zip。unzip命令的常用用法有:#unzipgong.zip(将gong.zip解压缩到当前目录);#unzip-ntext.zip-d/tmp(解压缩当前目录下的text.zip压缩文件,-n参数选项指明不覆盖原有文件,-d/tmp指明将文件解压缩到/tmp目录下);#unzip-vtext.zip(显示当前目录下text.zip压缩文件内容)。

3.bzip2命令
◆bzip2是一个无损压缩软件,具有高质量的数据压缩能力。它能将文件压缩到原来的10%到15%,而且压缩速度和解压缩速度都非常高,因此在Linux压缩软件中得到广泛使用。
◆bzip2从命令行读入文件名和参数,每个文件都被名为“原始文件名.bz2”的压缩文件替换。每个压缩文件具有与原文件相同的修改时间和权限,如果可能的话,还具有相同的属主,因此在解压缩时这些特性将正确地恢复。
◆具体操作如下,例如,用bzip2命令压缩当前目录下所有文件,用bunzip2-z*将获得相同的效果:#bzip2*。再例如用bunzip2命令解压缩当前目录下所有文件,其中有一个文件free.txt不是以bz2为后缀:#bunzip2。

【编辑推荐】

  1. 简单概括Linux发行版
  2. Linux无线网络技术:GPRS、GSM
  3. LINUX FSCK数据出错灾难应急方案
  4. 8个工作实用而有趣Linux下的Bash命令提示行
  5. linux内存管理之非连续物理地址分配(vmalloc)
责任编辑:薛辈辈 来源: sogo
相关推荐

2009-07-03 13:22:37

调用Servlet

2024-01-12 08:40:56

Python计算质数质数

2020-05-07 09:18:57

Linux压缩文件命令

2009-05-18 17:16:50

2009-10-28 10:56:20

2010-08-16 16:39:48

DIV内容居中

2019-10-24 08:52:23

Linux压缩文件归档

2010-04-19 16:17:39

防火墙网络管理服务器安全

2019-03-27 14:41:41

Python数据库Windows

2022-07-05 15:15:11

Python日期命令

2010-01-04 09:27:31

Linux压缩解压缩命令详解

2010-06-03 08:55:43

LINQ

2009-03-17 00:52:52

2020-09-14 14:18:05

Vue和React

2010-06-24 10:21:46

Linux Bzip2

2009-09-09 11:24:46

PHP实现MVC

2023-10-16 16:00:27

Redis限流

2009-12-16 16:11:14

Linux压缩文件

2018-04-11 08:25:11

Linux内存方法

2009-06-26 10:05:10

获取文件大小
点赞
收藏

51CTO技术栈公众号