一、Linux压缩工具概述
在Linux系统中,提供了许多压缩工具,虽然方便,但也难免造成一些混乱。笔者通过一段时间的整理,将它们理一理顺,希望能够对大家有所帮助:
首先,我们看一下下面这张“压缩包扩展名与压缩工具对应表”,大家通过这张表,就知道网上下载的压缩包,该用什么软件来解了。
工具名 压缩包扩展名
gzip/gunzip “.gz”
compress/uncompress “.Z”
zip/unzip “.zip”
bzip2/bunzip2 “.bz2”
lha “.lzh”
接下来,我们通过实例,来测量一下它们的压缩效率与性能:
测试一:
测试数据:源文件是一个数据库文件,其大小为5,244,928;
测试结果:
gzip:19,136,2秒
compress:17,769,1秒
zip:19,261,2秒
bzip2:1902,2秒
测试二:
测试数据:源文件是一个/etc目录的tar包,其大小为2,631,680;
测试结果:
gzip:551,736,2秒
compress:877,391,3秒
zip:551,856,3秒
bzip2:478,512,11秒
测试三:
测试数据:源文件是一个avi视频文件,其大小为23,157,760;
测试结果:
gzip:17,151,395,43秒
compress:压缩失败,43秒
zip:17,151,509,42秒
bzip2:16,587,991,2分40秒
通过上面的实验,我认为如果你需要高压缩率,就选择bzip2;否则最佳选择就是gzip,它的性价比较好,而且是纯正的自由软件:gzip就是GNU zip!
在LINUX/UNIX系统下,用这些压缩软件是不能直接对一个目录进行打包,当您需要这样做时,通常先使用tar进行归档,将整个目录打包成为一个tar包,然后用压缩软件来压缩。下面我们以备份/etc目录下的所有文件为例,说明一下:
tar –cvf etc /etc (将在当前目录生成一个etc.tar)
gzip etc.tar (将会把etc.tar压缩成为etc.tar.gz)
关于tar的更多信息,我们将专文说明。
好了,说了这么多,下面我们就一起逐一看一下这些压缩工具的用法。
二、Linux压缩工具概述
1.gzip和gunzip
压缩包扩展名:“.gz”
特点:
1)它是纯正的自由软件,性能不错!
2)若没有加上任何参数,生成压缩文件后,会删除原始文件;
命令使用:
1) 压缩一个文件:
gzip file 这样将生成file.gz,删除原文件file;
2) 压缩一个文件,并保留源文件:
gzip –c a > a.gz
3) 提高压缩率:gzip –9 file
注:压缩等级可以从1-9,数字越大压缩效果越好,但要花的时间也越长,默认值为6。
4) 解压缩:
gzip –d file.gz 或
gunzip file.gz
5) 显示详细信息:
gzip –v file
6) 显示版本信息:
gzip –V
2.bzip2和bunzip2
压缩包扩展名:“.bz2”
特点:
1)它采用了新的压缩演算法,压缩效果比传统的LZ77/LZ78压缩演算法来得好;
2)若没有加上任何参数,生成压缩文件后,会删除原始文件;
命令使用:
1) 压缩一个文件:
bzip2 file 这样将生成file.bz2,删除原文件file;
2) 压缩一个文件,并保留源文件:
bzip2 –k file
3) 提高压缩率:bzip –9 file
注:压缩等级可以从1-9,数字越大压缩效果越好,但要花的时间也越长。
4) 解压缩:
bzip2 –d file.bz2 或
bunzip2 file.bz2
5) 显示详细信息:
bzip2 –v file
6) 显示版本信息:
bzip2 –V
相关工具:
如果用bzip2压缩的文件出错的话,你可以尝试使用bzip2recover来恢复:
bzip2recover file-bad.bz2
3.compress和uncompress
压缩包扩展名:“.Z”
特点:
1)它是一个历史悠久的压缩程序,在许多UNIX系统中都可以找到;
2)默认情况下,生成压缩文件后,会删除原始文件。
命令使用:
1) 压缩一个文件:
compress file
2) 压缩一个文件,并保留源文件:
compress –c a > a.Z
3) 提高压缩率:compress –b9 file
注:压缩等级可以从9-16,数字越大压缩效果越好,但要花的时间也越长。预设值是16。
4) 解压缩:
compress –d file.Z 或
uncompress a.Z
5) 显示详细信息:
compress –v file
6) 显示版本信息:
compress –V
4.zip和unzip
压缩包扩展名:“.zip”
特点:
1)它是一个使用广泛的压缩程序,其版本横跨十多种操作系统与硬件结构平台;
2)默认情况下,生成压缩文件后,不会删除原始文件。
命令使用:
1) 压缩一个文件:
注意:如果要压缩的是个文件夹,则要加上-r参数,表示调用递归压缩,如:
zip -r temp.zip temp
zip zipfile file (zipfile是压缩后的文件名,file要压缩的文件名)
2) 压缩一个文件,并删除源文件:
zip –m file
3) 提高压缩率:zip –9 file
注:压缩等级可以从1-9,数字越大压缩效果越好,但要花的时间也越长。预设值是6。
4) 解压缩:
zip –d file.zip 或
unzip file.zip
5) 显示详细信息:
zip –v file
6) 显示版本信息:
zip –V
相关工具:
在Linux中,还提供了一个叫zipinfo的工具,能够察看zip压缩文件的详细信息:
zipinfo file.zip
三、其它压缩/解压缩工具
除了这四对压缩/解压缩工具外,在Linux下还有以下三种压缩/解压缩工具:
1.lha
lha是从lharc演变而来的压缩程序,文件经它压缩后,会产生一个具有“.lzh”的扩展名。使用起来还是比较简单的,而且它是可以直接将一个目录打包的:
1) 压缩一个文件:
lha –a lhzfile file (lhzfile是压缩后的文件名,file要压缩的文件名)
2) 解压缩:
lha –xiw=/tmp lhzfile (其中/tmp是解压缩后的存放目录,lhzfile是压缩文件名)
3) 压缩一个目录:
lha –a lhzfile directory
2.gzexe
这是一个十分特殊的压缩工具,它用来压缩可执行文件。当您执行被gzexe压缩过的可执行文件时,该文件会自动解压后继续执行,和执行一般的可执行文件一样。
当然这一过程会多占用一些系统资源,只有你的可用磁盘空间十分有限时才建议使用。
1) 压缩
gzexe program
这样会生成一个program~,为的是万一压缩失败还能够恢复,当你确定压缩后可以使用后,应删掉它,否则不就白压缩了吗?
2) 解压缩
gzexe –d program
3.unarj
如果你有一些用arj压缩的包的话,你可以使用unarj解开它,不过它只能够解,却无法执行压缩。在Linux没有提供arj压缩工具。
解压时,很简单:unarj e arjfile
分享到:
相关推荐
总之,STREAM作为一个强大的内存性能测试工具,提供了评估和比较Linux系统内存性能的有效手段。通过理解和应用它,我们可以更好地优化系统配置,提升整体计算效率,尤其是在大数据处理、科学计算等领域,对内存性能...
### Linux下性能测试工具简介 #### 工具1:memtester **功能介绍:** - **定义:** `memtester` 是一个用户空间的内存子系统测试工具,用于检测计算机内存是否存在故障。它可以识别出间歇性和非确定性的内存问题...
本文将详细介绍Linux下如何使用测试工具来测量DDR带宽。 一、DDR带宽测试的重要性 DDR带宽测试能帮助我们: 1. 诊断内存性能问题:如果系统运行缓慢,可能是由于内存带宽不足导致的。 2. 检验硬件兼容性:新硬件...
本文将详细介绍如何利用Linux下的工具进行磁盘I/O性能测试,以及如何编译和运行源码来实现图形化界面测试。 一、Linux中的磁盘I/O性能测试工具 1. **iostat**:这是Unix-like系统中的一个实用程序,用于报告CPU...
Linux性能分析工具是系统管理员和开发者用来诊断和优化系统性能的关键工具。在Linux环境中,有多个内置命令,如`top`、`ps`、`iostat`和`vmstat`,它们各自专注于不同的系统层面,例如CPU使用率、内存状态、磁盘I/O...
### Linux下nmon性能监控工具的安装与配置详解 #### 一、引言 在Linux环境中,性能监控是一项至关重要的任务。通过实时监控系统资源使用情况,可以及时发现潜在的问题,确保系统的稳定运行。Nmon是一款非常实用的...
在嵌入式环境中的性能优化,作者可能会讨论如何针对特定硬件优化内存配置,如内存约束下的缓存策略、内存压缩技术、以及动态调整内存分配策略。此外,书中可能还会涉及进程调度、I/O操作优化、中断处理等与性能密切...
在Linux系统中,C语言是开发底层程序的常用工具,特别是在处理文件操作和系统调用时。本主题涉及的是利用C语言实现文件的压缩与解压缩功能,而非依赖于shell命令如`gzip`, `bzip2`等。这种方式的优点在于性能更优、...
IOMETER 是一个流行的磁盘 IO 测试工具,本文将详细介绍如何在 Linux 下使用 IOMETER 测试磁盘 IO 性能。 一、安装 IOMETER 在 Linux 下安装 IOMETER 需要下载 IOMETER 的源代码,解压缩后编译安装。在 RedHat 6.1...
unyaffs 是一个用于解压 YAFFS 文件系统的实用工具,它允许用户在 Linux 系统上读取和提取从 NAND 闪存或者 YAFFS 文件系统映像中保存的数据。unyaffs_0.9.6-1_amd64.deb 是该工具的 Debian 包,适用于 x86_64 架构...
首先,ubench是一款专门为Linux设计的性能测试工具,其主要功能是对处理器(CPU)和内存进行基准测试。CPU测试旨在衡量处理器的计算能力,包括整数运算、浮点运算以及多线程处理等性能;内存测试则关注内存的读写...
在Linux操作系统中,高效压缩工具的重要性不言而喻,它们能够帮助我们节省存储空间,方便数据传输和备份。"xz-5.2.4.tar.gz"这个文件就是一个典型的Linux压缩包,它结合了两种常见的压缩算法,即xz和tar,为用户提供...
**wrk工具详解** wrk是一款高性能的HTTP基准测试工具,...总的来说,wrk-4.1.0是评估Web服务器性能的强大工具,尤其在Linux环境中,通过其灵活的配置和强大的Lua脚本支持,能够为开发者和运维人员提供深入的性能洞察。
总的来说,JsMinGUI作为一个JavaScript压缩工具,能够有效地减小代码体积,提升网页性能。然而,为了达到最佳的压缩效果和适应各种复杂的代码情况,开发者可能需要结合其他高级工具和策略,例如代码分割、动态导入和...
Unixbench是Linux下常用的综合性能测试工具,测试分数受硬件(如处理器、显卡、内存、硬盘等)及软件(如系统、编译器、开发库等)影响,支持单核测试和全核测试,测试得分越高,说明性能越好。 测试执行相对简单,...
Linux LiveCD制作工具是一种用于创建可引导光盘的软件,它允许用户在不安装操作系统到硬盘的情况下运行Linux发行版。这种技术广泛应用于系统救援、演示、教学或在没有可用网络的环境中快速启动一个完整的Linux环境。...
总之,Linux实用工具的种类繁多,涵盖了从系统管理、网络安全到性能监控等多个方面。熟练掌握这些工具的使用方法,对于提高Linux系统的管理效率和安全性具有重要意义。无论是初学者还是资深系统管理员,都应持续学习...