如何在Linux中压缩和解压缩文件
备份重要文件并在Internet上发送大文件时,压缩非常有用。
请注意,压缩已压缩的文件会增加另外的开销,从而会获得略大的文件。
所以,停止压缩压缩文件。
有许多程序在GNU/Linux中压缩和解压缩文件。
在本教程中,我们只能了解两个应用程序。
压缩和解压缩Linux上的文件
用于压缩诸如UNIX的系统中的文件的最常见程序是:
- GZIP.
- BZIP2.
1.使用gzip程序压缩和解压缩文件
GZIP是使用LEMPEL-ZIV编码(LZ77)算法压缩和解压缩文件的实用程序。
1.1压缩文件
要压缩名为theitroad.txt的文件,请使用Gzipped压缩版本替换它,运行:
$gzip theitroad.txt
Gzip将用名为theitroad.txt.gz的Gzipped压缩版本替换原始文件onitoad.txt。
GZIP命令也可以以其他方式使用。
一个精美的例子是我们可以创建一个特定命令输出的压缩版本。
查看以下命令。
$ls -l Downloads/| gzip > theitroad.txt.gz
上面的命令创建了下载文件夹的目录列表的压缩版本。
1.2压缩文件并将输出写入不同的文件(不要替换原始文件)
默认情况下,GZIP程序将压缩给定文件,用Gzipped压缩版本替换它。
但是,我们可以保留原始文件并将输出写入标准输出。
例如,以下命令,将onitorad.txt压缩并将输出写入输出.txt.gz。
$gzip -c theitroad.txt > output.txt.gz
同样,要解吸指定输出文件名的谷拓文件:
$gzip -c -d output.txt.gz > theitroad1.txt
上面的命令解压缩了output.txt.gz文件并将输出写入theitroad1.txt文件。
在这两种情况下,它不会删除原始文件。
1.3解压缩文件
要解压缩文件theitroad.txt.gz,请使用原始未压缩版本替换它:
$gzip -d theitroad.txt.gz
我们还可以使用gunzip来解压缩文件。
$gunzip theitroad.txt.gz
1.4查看压缩文件的内容而不减压它们
要使用gzip查看压缩文件的内容而不解于它,请使用-c标志如下所示:
$gunzip -c theitroad1.txt.gz
或者,使用如下所示的zcat实用程序。
$zcat theitroad.txt.gz
我们还可以将输出管制到"disult"命令,以按照下面的页面查看输出页面。
$gunzip -c theitroad1.txt.gz | less
$zcat theitroad.txt.gz | less
或者,存在一个宽松程序,该程序执行与上面的管道相同的功能。
$zless theitroad1.txt.gz
1.5通过指定压缩级别使用Gzip压缩文件
GZIP的另一个显着优势是它支持压缩级别。
它支持3个压缩级别,如下所述。
- 1 - 最快(最差)
- 9 - 最慢最慢(最好)
- 6 - 默认级别
要压缩名为OniToad.txt的文件,请使用最佳压缩级别的Gzipped压缩版本替换它:
$gzip -9 theitroad.txt
1.6串联多个压缩文件
也可以将多个压缩文件连接到一个。
如何?
看看以下示例。
$gzip -c theitroad1.txt > output.txt.gz
$gzip -c theitroad2.txt >> output.txt.gz
上面的两个命令将compress theitroad1.txt和onitoad2.txt并将其保存在一个名为contance.txt.gz的文件中。
我们可以使用以下命令中的任何一个来查看文件(onitad1.txt和onitoad2.txt)的内容:
$gunzip -c output.txt.gz
$gunzip -c output.txt
$zcat output.txt.gz
$zcat output.txt
有关更多详细信息,请参阅man页面。
$man gzip
2.使用BZIP2程序压缩和解压缩文件
BZIP2与GZIP程序非常相似,但使用命名的dig掘机轮式块排序文本压缩算法和霍夫曼编码的不同压缩算法。
使用BZIP2压缩的文件将以.bz2扩展结束。
就像我说的那样,BZIP2的用法几乎与GZIP相同。
只需用Bzip2,带BuzCAT的Bzip2,Zcat用Bzcat替换Gzip,用Bzcat替换Gzip。
要使用BZIP2压缩文件,请使用压缩版本替换它,运行:
$bzip2 theitroad.txt
如果我们不想替换原始文件,请使用-c标志并将输出写入新文件。
$bzip2 -c theitroad.txt > output.txt.bz2
解压缩压缩文件:
$bzip2 -d theitroad.txt.bz2
或者,
$bunzip2 theitroad.txt.bz2
要查看压缩文件的内容而不减少它:
$bunzip2 -c theitroad.txt.bz2
或者,
$bzcat theitroad.txt.bz2
有关更多详细信息,请参阅Man页面。
$man bzip2