我们回到对许多人来说都是一个优势的通常的问题 高级GNU / Linux用户 这是可用的大量替代方案或可能性。 对于最没有经验的人来说,当不知道该选择哪一个时可能会遇到问题,但是正如我所说,拥有更多可能性或灵活性从来都不是一件坏事,相反。 在这种情况下,我们将讨论 压缩和解压缩算法和过程 存在于我们最喜欢的平台上,因此您不知道哪种是您的最佳选择,就可以以不同的方式看到它们,而不会造成很大的混乱...
事实是,不仅有用作tar的工具,我们还可以使用它们创建程序包,还可以像往常一样看到一些压缩类型。 著名的tarball 其中我们已经讲过 LxA很多场合。 我们还将找到这种简单而频繁的工具的变体,例如grep,以搜索诸如bzfgrep之类的压缩文件,甚至搜索诸如more and more之类的其他文件,这些工具也具有诸如bzless和bzmore之类的压缩文件的变体。 要查看它们,我们只需要看一下以下命令的输出:
apropos compress
算法和测试:
所有之中 算法 Linux提供了无损压缩来压缩和解压缩数据,我们有很多选择。 为了证明使用一种或另一种压缩算法进行压缩所花费的时间或对其进行解压缩所花费的时间,我建议您自己进行一些测试。 您可以为此使用time命令,这将为您提供压缩和解压缩过程所花费的时间。 例如,如果要使用zip工具压缩名为test的文件:
time zip prueba.zip prueba
那会浪费时间,但是如果您想看看 生成文件的大小您可以尝试使用不同的算法和压缩工具来压缩相同的文件,并使用简单的命令列出所有压缩文件的目录后,检查每个文件的大小:
ls -l
如果愿意,还可以使用其他工具来比较压缩文件,例如,使用diff工具的一些变体:
xzdiff [opciones] fichero1 fichero2 lzdiff [opciones] fichero 1 fichero2
如果您想查看算法大小和速度的图表,可以访问 这个链接.
压缩工具:
恩CUANTO一个 可用工具 我们有很多,其中一些具有针对新手的图形界面,我们只需要处理一个简单直观的GUI即可执行压缩和解压缩,例如PeaZip或7zip等。 具体来说,第一种能够处理各种格式,特别是其中的180多种。 但是,如果您是仍然喜欢使用终端的人之一,那么您肯定会知道很多工具:
- 压缩和解压缩:如果您想要的是可移植到其他操作系统的文件,这是一个不错的选择,因为您会在Microsoft Windows系统以及macOS以及其他操作系统上找到用于处理这些文件的工具。 例如,要压缩一个名为test的文件或目录,然后对其进行解压缩:
zip prueba.zip prueba unzip prueba.zip
- GZIP注意:最好是仅在Unix / Linux操作系统之间实现可移植性。 也许压缩率几乎与zip相同,也许略好一些,但是在zip或gzip下文件大小不会有太大差异。 要使用此工具进行压缩和解压缩,在解压缩的情况下,我们可以使用两个选项,它们是-do选项,直接使用别名gunzip即可:
gzip prueba gzip -d prueba.gz gunzip prueba.gz
- bzip2:与上一个算法一样,该算法在Unix / Linux操作系统中非常存在,尽管与gzip相比,它在压缩和解压缩过程中会花费更长的时间。 在这种情况下,延迟不会像xz那样转化为更高的压缩率,因为在bzip2下压缩的文件将比gzip压缩的文件占用更多的空间。 这就是为什么建议避免使用bzip2并选择xz或gzip的原因。 尽管所有内容都将取决于您尝试压缩的文件类型...例如:
bzip2 prueba bzip2 -d prueba.bz2
- xz:对于大文件大小,它是首选格式,因为它提供了最佳的压缩率,但也确实需要更长的时间才能完成压缩或解压缩。 它比以前的版本要新得多,因此您可能会发现自己拥有更多的原始发行版或旧的Unix系统,而这些系统没有为此提供工具。 例子:
xz prueba xz -d prueba.xz
- unrar和rar:由于这些工具,我们也可以在Linux中使用RAR格式,尽管它在* nix系统中不像以前的系统那么流行...在这种情况下,我们可以选择:
rar a prueba.rar prueba unrar e prueba.rar
- 压缩和解压缩:尽管compress的使用正在丢失,并且不如以前的流行,但我也不想忽略此工具。 它用于压缩扩展名为.Z的文件,并且由于修改了Lempel-Ziv算法,所以可以这样做。 例如:
compress -v prueba uncompress prueba.Z
如果您想直接与 tar工具您还可以同时打包和压缩文件,以及解压缩和解压缩文件。 在这种情况下,我们可以将算法类型的选项传递给tar。 但是首先您应该知道,使用选项c创建一个包,使用选项x我们提取它。 例如:
tar czvf prueba.tar.gz prueba tar xzvf prueba.tar.gz
如您所见,我们已经使用了 选项 zvf表示压缩算法z的类型(在本例中为gzip),v表示详细信息,该模式提供有关正在执行的操作的信息,f表示要使用的压缩文件...好吧,如果我们更改通过与另一个算法类型相对应的另一个字母z,我们可以更改应用于压缩包的压缩类型:
选项 | 算法 | 延期 |
---|---|---|
z | GZIP | 名为.tar.gz |
j | bzip2 | .tar.bz2 |
J | xz | .tar.xz |
邮编 | 拉链 | .tar.lz |
伊兹玛 | 伊兹玛 | .tar.zzma |
*当然,所有先前的命令都有一些有趣的选项,我邀请您使用man进行探索,其中一些非常必要的操作,例如递归等。
不要忘了 留下您的评论...
我特别使用7zip
您错过了7zip。 一个很好的选择和免费软件。
很棒的信息,尽管我首先会说它也可以以图形方式进行压缩和解压缩而没有任何问题,所以您不会看到当下的“大黄蜂”表示GNU / Linux非常困难,必须完成所有工作在控制台上。 不,这是另一种选择。