|
|
|
|
挪动端

怎样在通博8888官网零碎中运用文件紧缩

通博8888官网 零碎为文件紧缩提供了很多选择,要害是选择一个最合适你的。假如你对可用于 通博8888官网 零碎的文件紧缩下令或选项有任何疑问,你大概应该看一下 apropos compress 这个下令的输入。假如你无机会这么做,你会惊奇于有云云多的的下令来停止紧缩文件息争紧缩文件。

作者:Sandra Henry-stocker泉源:通博8888官网中国|2018-01-09 09:00

开辟者盛宴来袭!7月28日51CTO首届开辟者大赛决赛带来技能创新分享

怎样在通博8888官网零碎中运用文件紧缩

通博8888官网 零碎为文件紧缩提供了很多选择,要害是选择一个最合适你的。

假如你对可用于 通博8888官网 零碎的文件紧缩下令或选项有任何疑问,你大概应该看一下 apropos compress 这个下令的输入。假如你无机会这么做,你会惊奇于有云云多的的下令来停止紧缩文件息争紧缩文件;别的另有很多下令来停止紧缩文件的比拟、查验,而且可以在紧缩文件中的内容中停止搜刮,乃至可以把紧缩文件从一个款式酿成别的一种款式(如,将 .z 款式变为 .gz 款式 )。

你可以看到只是实用于 bzip2 紧缩的全部条款就有这么多。加上 zip、gzip 和 xz 在内,你会有十分多的选择。

  1. $ apropos compress | grep ^bz
  2. bzcat (1) - decompresses files to stdout
  3. bzcmp (1) - compare bzip2 compressed files
  4. bzdiff (1) - compare bzip2 compressed files
  5. bzegrep (1) - search possibly bzip2 compressed files for a regular expression
  6. bzexe (1) - compress executable files in place
  7. bzfgrep (1) - search possibly bzip2 compressed files for a regular expression
  8. bzgrep (1) - search possibly bzip2 compressed files for a regular expression
  9. bzip2 (1) - a block-sorting file compressor, v1.0.6
  10. bzless (1) - file perusal filter for crt viewing of bzip2 compressed text
  11. bzmore (1) - file perusal filter for crt viewing of bzip2 compressed text

在我的 Ubuntu 零碎上 ,apropos compress 下令的前往中列出了 60 条以上的下令。

紧缩算法

紧缩并没有普适的方案,某些紧缩东西是有损紧缩,比方一些紧缩用于增加 mp3 文件巨细,而可以使倾听者有靠近原声的音乐感觉。但是在 通博8888官网 下令行上紧缩或归档用户文件所运用的算法必需可以准确地重新规复为原始数据。换句话说,它们必需是无损的。

这是怎样做到的?让我们假定在一行上有 300 个相反的字符可以被紧缩成像 “300x” 如许的字符串,但是这种算法对大少数文件没有很大的用途,由于文件中不行能包括长的相反字符序列比完全随机的序列更多。 紧缩算法要庞大得多,从 Unix 晚期紧缩初次被引入以来,它就越来越庞大了。

在 通博8888官网 零碎上的紧缩下令

在 通博8888官网 零碎上最常用的文件紧缩下令包罗 zipgzipbzip2xz。 一切这些紧缩下令都以相似的方法任务,但是你需求衡量有几多文件要紧缩(节流几多空间)、紧缩破费的工夫、紧缩文件在其他你需求运用的零碎上的兼容性。

偶然紧缩一个文件并不会破费许多工夫和精神。在上面的例子中,被紧缩的文件实践上比原始文件要大。这并不是一个罕见状况,但是有能够发作——尤其是在文件内容到达肯定水平的随机性。

  1. $ time zip bigfile.zip bigfile
  2. adding: bigfile (default 0% )
  3. real 0m0.055s
  4. user 0m0.000s
  5. sys 0m0.016s
  6. $ ls -l bigfile*
  7. -rw-r--r-- 1 root root 0 12 20 22:36 bigfile
  8. -rw------- 1 root root 164 12 20 22:41 bigfile.zip

留意该文件紧缩后的版本(bigfile.zip)比原始文件(bigfile)要大。假如紧缩添加了文件的巨细或许增加很少的比例,大概独一的益处便是便于在线备份。假如你在紧缩文件后看到了上面的信息,你不会从紧缩中失掉什么受害。

  1. ( defalted 1% )

文件内容在文件紧缩的进程中有很紧张的作用。在下面文件巨细添加的例子中是由于文件内容过于随机。紧缩一个文件内容只包括 0 的文件,你会有一个相称震惊的紧缩比。在云云极度的状况下,三个常用的紧缩东西都有十分棒的结果。

  1. -rw-rw-r-- 1 shs shs 10485760 Dec 8 12:31 zeroes.txt
  2. -rw-rw-r-- 1 shs shs 49 Dec 8 17:28 zeroes.txt.bz2
  3. -rw-rw-r-- 1 shs shs 10219 Dec 8 17:28 zeroes.txt.gz
  4. -rw-rw-r-- 1 shs shs 1660 Dec 8 12:31 zeroes.txt.xz
  5. -rw-rw-r-- 1 shs shs 10360 Dec 8 12:24 zeroes.zip

令人印象深入的是,你不太能够看到超越 1000 万字节而紧缩到少于 50 字节的文件, 由于根本上不行能有如许的文件。

在更真实的状况下 ,巨细差别总体上是差别的,但是差异并不明显,比方关于的确不太大的 jpg 图片文件来说。

  1. -rw-r--r-- 1 shs shs 13522 Dec 11 18:58 image.jpg
  2. -rw-r--r-- 1 shs shs 13875 Dec 11 18:58 image.jpg.bz2
  3. -rw-r--r-- 1 shs shs 13441 Dec 11 18:58 image.jpg.gz
  4. -rw-r--r-- 1 shs shs 13508 Dec 11 18:58 image.jpg.xz
  5. -rw-r--r-- 1 shs shs 13581 Dec 11 18:58 image.jpg.zip

在对大的文本文件异样停止紧缩时 ,你会看到明显的差别。

  1. $ ls -l textfile*
  2. -rw-rw-r-- 1 shs shs 8740836 Dec 11 18:41 textfile
  3. -rw-rw-r-- 1 shs shs 1519807 Dec 11 18:41 textfile.bz2
  4. -rw-rw-r-- 1 shs shs 1977669 Dec 11 18:41 textfile.gz
  5. -rw-rw-r-- 1 shs shs 1024700 Dec 11 18:41 textfile.xz
  6. -rw-rw-r-- 1 shs shs 1977808 Dec 11 18:41 textfile.zip

在这种状况下 ,xz 相较于其他紧缩下令无效的减小了文件巨细,关于第二的 bzip2 下令也是云云。

检查紧缩文件

这些以 more 开头的下令(bzmore 等等)可以让你检查紧缩文件的内容而不需求解压文件。

  1. bzmore (1) - file perusal filter for crt viewing of bzip2 compressed text
  2. lzmore (1) - view xz or lzma compressed (text) files
  3. xzmore (1) - view xz or lzma compressed (text) files
  4. zmore (1) - file perusal filter for crt viewing of compressed text

为理解紧缩文件内容表现给你,这些下令做了少量的盘算。但在另一方面,它们不会把解紧缩后的文件留在你零碎上,它们只是即时解压需求的局部。

  1. $ xzmore textfile.xz | head -1
  2. Here is the agenda for tomorrow's staff meeting:  

比拟紧缩文件

有几个紧缩东西箱包括一个差别下令(比方 :xzdiff),那些东西会把这些任务交给 cmpdiff 来停止比拟,而不是做特定算法的比拟。比方,xzdiff 下令比拟 bz2 范例的文件和比拟 xz 范例的文件一样复杂 。

怎样选择最好的 通博8888官网 紧缩东西

怎样选择紧缩东西取决于你任务。在一些状况下,选择取决于你所紧缩的数据内容。在更多的状况下,取决你构造内的常规,除非你对磁盘空间有着很高的敏感度。上面是普通性发起:

zip 关于需求分享给或许在 通博8888 零碎下运用的文件最合适。

gzip 大概对你要在 Unix/通博8888官网 零碎下运用的文件是最好的。固然 bzip2 曾经靠近遍及,但 gzip 看起来仍将临时存在。

bzip2 运用了和 gzip 差别的算法,而且会发生比 gzip 更小的文件,但是它们需求破费更长的工夫停止紧缩。

xz 通常可以提供最好的紧缩率,但是也会破费相称长的工夫。它比其他东西更新一些,能够在你任务的零碎上还不存在。

留意

在紧缩文件时,你有许多选择,而在少少的状况下,并不克不及无效节流磁盘存储空间。

【编辑引荐】

  1. 绝不要运用的通博8888官网下令!
  2. 迁徙到通博8888官网 :入门引见
  3. 2018值得选用的五个通博8888官网效劳器刊行版
  4. 在通博8888官网中怎样运用date下令
  5. 反省零碎和硬件信息的下令
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
各人都在看
猜你喜好

读 书 +更多

盘算机网络平安

本书从盘算机网络平安的观点动手,剖析了单机节点、单一网络、互联网络和开放互联网络的根本平安题目,并对盘算机网络平安体系架谈判平安机...

订阅51CTO邮刊

点击这里检查样刊

订阅51CTO邮刊