热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

Linux文件压缩工具指南

文章标题:Linux文件压缩工具指南。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  作者:Jacek Artymiak
  
  一些免费和实用工具的评价
  
  要使用本指南,请阅读作者的介绍,然后使用索引跳至指南中解释您所需工具的那一节。如果愿意,也可以阅读所有内容!我们在每一节的后面提供了参考资料的链接,并在本指南的结尾处提供了一个主要列表。
  
  
  
  文件的压缩和解压缩是计算历史上最有用的创造之一,但缺乏可移植性和开放工具是阻碍它发挥其应有作用的最主要的一个障碍。只要我们是与其他使用类似 Unix 操作系统的用户交换文件,就可以使用例如 compress、gzip 和 bzip2 这样的可移植工具(如需链接,请参阅参考资料)。但世界上其他人使用的是各种各样的专用软件 -- 甚至专用压缩算法 -- 拥有者可能永远也不会将它们公之于众。
  
  这种事态发展下去会很危险。想象一下,将来我们可能无法对档案的重要部分译码,原因是我们创建它们时使用的是专用工具和算法,而那些工具运行所在的操作系统和硬件已逐渐过时,消失不见。这就是为什么我们应该使用开放源码压缩工具,或者至少使用免费和有完善记载算法的商业压缩工具的原因。(只是要记住避免使用任何特殊的增强。)
  
  本文是有关在 Linux 操作系统上使用 .arc、.arj、.lzh (.lha)、.rar、.sit、.zip 和 .zoo 文件的指南。我选择讨论这些特殊的格式是因为三种最流行的操作系统 (MS-DOS、微软 Windows 和 Mac OS)的用户最常使用它们。我之所以写这篇指南是希望引导大家快速找出正确的工具,而不是详细地从技术上讨论文件压缩技术。
  
  最后,我想简短说明一下自抽取文件。这样的档案往往位于包含压缩格式数据的现实程序中。执行它们时,它们会解包,并将存储在程序主体内的数据复制到您指定的任何驱动器上。唯一的问题是它们无法在 Linux 上使用,没有工具可以抽取它们。在这种情况下,需要让创建档案的那个人将它作为一个一般档案压缩。
  
  目前先说到这里。我希望这个指南能对您有所帮助,并期待着您的意见和建议。
  
  索引
  
  
  .arc
  .arj
  .lzh (.lha)
  .rar
  .sit
  .zip
  .zoo
  
  
  --------------------------------------------------------------------------------
  
  .arc
  带有 .arc 扩展名的文件相对来说比较少见。如果您偶然碰到一个,基本上可以认定它是使用旧的 MS-DOS SAE ARC 或 PKware PKARC 归档实用程序创建的。这种形式在 Linux 上的支持性不是太好,并很难指望在 Linux 机器上对这些文件解压缩。如果需要创建 .arc 文件,尝试在 DOSEMU 或 VMware 下运行原始 SAE ARC 或 PKware PKARC(在携带 MS-DOS 实用程序的 FTP 服务器上查找它们)。
  
  要解压缩 .arc 文件,使用 Aladdin Expander for Linux。写这篇文章的时候,Aladdin Expander 可以为公众 Beta 测试目的免费获得;它是否继续免费还是个未知问题。
  
  要解压缩 .arc 文件,输入 unstuff file.arc。-d 是个有用的选项,指定解压缩文件的目标位置。例如:unstuff -d=./home/james/incoming file.arc。
  
  注:要了解更多有关 Aladdin Expander for Linux 的详细信息,请阅读有关 .sit 文件的那一节。
  
  VMware:http://www.vmware.com
  
  DOSEMU:http://www.dosemu.org
  
  Aladdin 系统: http://www.aladdinsys.com/expander/expander_linux_login.html
  
  返回到索引
  
  
  --------------------------------------------------------------------------------
  
  .arj
  带有 .arj 扩展名的文件是使用 ARJ Software 用于 MS-DOS 和 Windows 的 ARJ 实用程序创建的。因为 ARJ 是一种不能免费获得源代码的共享件程序,所以在 Linux 平台上几乎不存在与其功能匹配的工具,这使得 .arj 文件使用起来相当困难。
  
  对于 ARJ 文件,只要能成功地解压缩就已经够幸运的了。不可能在 Linux 上进行 .arj 形式的压缩,因为没有用于 Linux 的、生成这种文件的本机压缩工具。(可以尝试在 DOSEMU 或 VMware 下运行原始 ARJ 软件,但这根本算不上是一种易于使用的解决方案)。
  
  要解压缩 .arj 文件,使用 unarj 实用程序。它比 ARJ 慢,能力也不如 ARJ,但至少它能够顺利地抽取大多数 .arj 文件。它只能将文件抽取到当前的工作目录、列出档案内容,或者测试档案。
  
  要查看简短的帮助页面,输入 unarj;如需较详细的描述,请参阅 unarj.doc 文件,通常它位于 /usr/doc/unarj-2.43 目录中。
  
  尽管在哪里解压缩 .arj 文件是由您来选择的,但为避免把主工作目录混淆,通常应该在主目录中创建一个临时子目录,将当前工作目录更改到新目录,将压缩的文件移到新目录中,然后使用 unarj e archive.arj 来解压缩有问题的文件。
  
  用于 Linux 的 unarj 只能一次抽取所有文件;不能从档案中抽取个别文件。至少如果文件已存在于当前的工作目录中,即使在档案中找到具有相同名称的文件,您也不会覆盖其内容。另外, unarj 不支持空目录或自抽取档案;后者是 MS-DOS/Windows 程序,它们无法在 Linux 上运行,但可以在 DOSEMU 或 VMware 下运行。
  
  以下是其它一些 unarj 选项:
  
  unarj archive.arj 或 unarj l archive.arj -- 列出档案内容
  unarj t archive.arj -- 测试档案
  unarj x archive.arj -- 带路径名抽取文件
  
  
  
  请注意,unarj 选项不是以减号 (-) 开头的。
  
  如果 unarj 解压缩文件失败,尝试使用 Aladdin Expander for Linux(有关详细信息,请参阅有关 .sit 的那一节)。您还可以让创建档案的人使用其它工具(例如可用于 MS-DOS 的免费 gzip)来压缩它。您可能还需要一个 simple.arj 档案,在其中要避免使用所有高级 ARJ 选项,例如卷、将档案分成几个小部分、以及自抽取。
  
  为什么不使用自抽取 ARJ 档案呢?这些是不能在 Linux 下运行的 MS-DOS 样式的可执行文件;它们使用不同的系统库,它们的内部格式也与 Linux 所需的二进制可执行文件的格式不同。可能可以在 DOSEMU 或 VMware 下运行自抽取 ARJ 档案。
  
  以 ARJ 或 JAR 形式进行的压缩仍然不能在 Linux 上使用,按照 ARJ Software 的 FAQ 页面的说法,我们不应该等待 Linux 移植。如果您知道有任何 Linux 工具可以解压缩 .jar 文件,请务必告诉我。
  
  可以从 ARJ Software 的站点或携带您所需 Linux 发行版的 FTP 服务器上下载 unarj 源码。另外,unarj 通常是基本 Linux 发行版的一部分,因此可以在主要分发 CD-ROM 上找到它。如需到所有 Linux 发行版的链接的列表,请参阅 Linux 发行版页面。
  
  ARJ 软件:http://www.arjsoft.com
  
  ARJ 的 FAQ 页面:http://www.arjsoft.com/faq.htm
  
  ARJ 的下载页面:http://www.arjsoft.com/files.htm
  
  DOSEMU:http://www.dosemu.org
  
  VMware:http://www.vmware.com
  
  Aladdin Expander: http://www.aladdinsys.com/expander/expander_linux_login.html
  
  gzip:http://www.gnu.org/software/gzip/gzip.html
  
  Linux 发行版页面:http://www.linux.org/dist/index.html
  
  返回到索引
  
  
  --------------------------------------------------------------------------------
  
  .lzh (.lha)
  带有 .lzh 或 .lha 扩展名的文件使用的是 LHa、LHarc 或 LHx 压缩实用程序进行的压缩。这些实用程序是由 Y. Tagawa、H. Yoshizaki、Momozou 和 Masaru Oki 开发的。这些实用程序已移植到许多操作系统,使用它们所创建的文件也具有相当的可移植性。Mats Andersson 执行了 Linux 移植。
  
  与 gzip 不同,lha 实用程序执行多个文件的压缩。要压缩单个文件,输入 lha a archive file。lha 创建的档案带有 .lzh 扩展名。如果 archive.lzh 已在当前的工作目录中存在,那么您让 lha 压缩的文件就将添加到这一现有的档案中。archive.lzh 先前的内容仍被保留,除非它已包含带有相同名称的文件,在这种情况下,旧文件将被新文件取代。该操作是 盲目的,意味着它不检查文件的时间戳记;要确保只有带有更新时间戳记的文件才能替换档案中已保存的较旧的文件,这时使用 u 选项而不是 a 选项(例如,lha u archive file)。
  
  当收到 .lzh 文件的人抱怨无法解压缩档案时,尝试使用 lha ag archive file 或 lha ao archive file。g 和 o 选项分别指示 lha 使用常规或与 lha 兼容的归档方法。如果您只更新现有的档案,使用 u 而不是 a。
  
  归档多个文件和归档单个文件一样容易:使用通配符(例如, lha a archive files*)或输入存储文件所在的顶级目录(例如,lha a archive directory)。所有文件和子目录都将自动存储在档案中。文件替换规则和 u 选项对多个文件和单个文件所起的作用是一样的。通配符使用的语法和您在常用的 shell 中所使用的语法相同。
  
  以下是其它一些 lha 选项:
  
  l -- 列出档案内容(例如,lha l archive.lzh)
  v -- 列出详细格式的档案内容(例如,lha v archive.lzh)
  t -- 测试档案的完整性(例如,lha t archive.lzh)
  
  
  
  请注意,lha 选项不必以负号 (-) 开头,它们之间也不应该有空格。如需其它选项的列表,请输入 lha。
  
  .lzh 和 .lha 文件的解压缩相当容易:只需输入 lha e archive.lha。如果希
推荐阅读
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • 使用在线工具jsonschema2pojo根据json生成java对象
    本文介绍了使用在线工具jsonschema2pojo根据json生成java对象的方法。通过该工具,用户只需将json字符串复制到输入框中,即可自动将其转换成java对象。该工具还能解析列表式的json数据,并将嵌套在内层的对象也解析出来。本文以请求github的api为例,展示了使用该工具的步骤和效果。 ... [详细]
author-avatar
Struggle大飞哥
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有