查看压缩文件:gzcat 命令
gzcat 命令显示使用 gzip 或者 compress 命令压缩的文件。
$ gzcat filename
要查看 data.txt.gz 文件,请使用以下命令:
# gzcat data.txt.gz northwest NW oirl Craig 10 western WE Sharon Kelly 40 southwest SW Chris Foster 33 northeast NE TJ Nichols 67 north NO Val Shultz 91 central CT Sheri Watson 44
注意:gzcat 命令不会更改压缩文件的内容。
压缩文件以压缩形式保留在磁盘上。
compress 命令
压缩文件时,compress 命令用具有 .Z 扩展名的新文件替换原始文件。
$ compress [ -v ] filename
原始文件的所有权和修改时间保持不变,但文件内容发生了变化。
压缩量取决于我们压缩的文件类型。
通常,压缩会将文本文件减少 50% 到 60%。
压缩文件:gzip 命令
或者,我们也可以使用 gzip 命令来压缩文件。
$ gzip [ -v ] filenames
gzip 命令执行与 compress 命令相同的功能,但 gzip 命令通常生成较小的文件。
例如,要压缩一组文件 file1. file2. file3 和 file4,请输入以下命令:
$ gzip file1 file2 file3 file4 $ ls *.gz file1.gz file2.gz file3.gz file4.gz
压缩文件的扩展名为 .gz。
查看和解压缩存档文件:unzip 命令
unzip 命令用于列出文件以及提取压缩的 .zip 文件的内容。
$ unzip zipfile
要解压缩 file.zip 存档文件,请使用以下命令:
$ unzip file.zip
压缩文件:compress 命令
以下示例向我们展示了如何压缩名为 test.tar 的文件。
# compress -v test.tar test.tar: -- replaced with test.tar.Z Compression: 96.35%
# ls -lrt test.tar.Z -rw-r--r--. 1 root root 373 Dec 7 19:31 test.tar.Z
其中:
-v(详细)选项提供有关每个文件的缩减或者扩展百分比的信息。
压缩文件 test.tar.Z 替换了 test.tar 文件。
注意:当我们压缩已压缩的文件时,文件大小会增加,而不是变小。
此外,当我们重命名已压缩的文件并再次对其运行 compress 命令时,文件大小会增加,而不是变小。
文件压缩
由于创建和存储了大量企业数据,因此迫切需要节省磁盘空间并优化数据传输时间。
有多种工具、实用程序和命令可用于文件压缩。
一些常用的命令是:
- compress 命令
- gzip 命令
- zip 命令
压缩和归档多个文件:zip 命令
zip 命令一次性将多个文件压缩并归档到一个文件中。
$ zip target_filename source_filenames
要将 test1 和 test2 压缩到 test.zip 存档文件中,请输入以下命令:
# zip test.zip test1 test2 adding: test1 (deflated 5%) adding: test2 (stored 0%)
# ls -l test.zip -rw-r--r--. 1 root root 336 Dec 8 05:32 test.zip
默认情况下,如果我们不指定带有扩展名的新文件名,则 zip 命令会将 .zip 扩展名添加到压缩存档文件中。
注意:我们可以在命令行上运行 zip 或者 unzip 命令以查看与每个命令一起使用的选项列表。
解压缩文件:uncompress 命令
uncompress 命令将压缩文件恢复到未压缩状态。
$ uncompress options filename
要解压缩 test.tar.Z 文件并将其恢复到 test.tar 文件,请输入以下命令:
# uncompress -v test.tar.Z test.tar.Z: -- replaced with test.tar
-v 选项显示有关正在执行的操作的添加消息。
我们可以使用带有 -c 选项的 uncompress 命令将压缩文件的内容发送到标准输出(屏幕),而无需更改压缩的 .Z 文件。
否则,我们可以使用管道 (|) 字符将解压缩命令的输出发送到另一个程序。
我们可以使用 tar 命令列出 uncompress 命令正在读取的文件的内容。
# uncompress -c test.tar.Z | tar tvf -rw-r--r-- root/root 31 2017-12-02 07:02 test -rw-r--r-- root/root 19 2017-12-02 07:04 test1 -rw-r--r-- root/root 20 2017-12-02 07:04 test2
命令行末尾的破折号 (-) 表示 tar 命令从 uncompress 命令的管道输出中读取数据,而不是从 tar 文件或者磁盘中读取数据。
解压缩文件:gunzip 命令
gunzip 命令解压缩已使用 gzip 命令压缩的文件。
$ gunzip filename
要解压缩 file1.gz 文件,请使用以下命令:
$ gunzip file1.gz
查看压缩文件:zcat 命令
zcat 命令将压缩文件的未压缩形式打印到标准输出。
$ zcat filename
要查看 data.txt.Z 压缩文件的内容,请输入以下命令:
# zcat data.txt.Z northwest NW oirl Craig 10 western WE Sharon Kelly 40 southwest SW Chris Foster 33 northeast NE TJ Nichols 67 north NO Val Shultz 91 central CT Sheri Watson 44
注意: zcat 命令解释压缩的数据并显示文件的内容,就像它没有被压缩一样。
zcat filename 命令在功能上与 uncompress -c filename 命令相同。
例如查看压缩文件data.txt.Z的内容,我们也可以使用如下所示的命令。
uncompress -c data.txt.Z