gzcat 和 zcat 命令有什么作用?

Mic*_*urt 9 command-line

我是 Linux 新手,只想知道

  • 什么的gzcat,并zcat命令吗?
  • 它们之间有什么区别?
  • 我们会在什么场合使用它们?

如果你们能举一些例子,那真的很有帮助。

Zan*_*nna 10

看一眼 man zcat

你会看到它们是一样的:

在某些系统上,可能将 zcat 安装为 gzcat 以保留原始链接以进行压缩。

他们所做的是解压缩压缩档案并将整个内容写入标准输出,即终端窗口。

这很少是您想要的。

$ ls -l Py*
-rw-rw-r-- 1 zanna zanna 20566643 Aug 17 17:12 Python-3.5.2.tgz
$ zcat Py* > huge-file
$ wc huge-file
1859226  7277134 78458880 huge-file
Run Code Online (Sandbox Code Playgroud)

但是,您可以使用它来读取一些已压缩的旧系统日志,如下所示:

$ sudo -i
# zcat /var/log/dpkg.log.2.gz | less
Run Code Online (Sandbox Code Playgroud)

但正如@Serg 指出的那样,还有zless一个无用的用法cat

# zless /var/log/dpkg.log.2.gz
Run Code Online (Sandbox Code Playgroud)

您还可以将 ( >) 输出重定向到这些示例中的文件,因为它太长了。然后你可以在你最喜欢的文本编辑器中阅读它,这样可以更容易地滚动和搜索......

# zcat /var/log/dkpg.log.2.gz > old-dpkg-log
Run Code Online (Sandbox Code Playgroud)

否则,zcat保留原始文件并且不保存新文件或目录,因此它提供了一种可以在不造成任何混乱的情况下查看存档内部的方法。

您可能会在脚本中找到它的一个很好的用途...... :)

  • @Serg 哦不,UUoC!!>_< (2认同)

Pan*_*kis 5

补充资料:

zcat是一样的东西uncompress -c,虽然在很多系统上它实际上gzcat和和一样gunzip -c

gzcatgunzip -cwhich is相同gzip -dc

man 页面和可用的选项:

zcat
gzcat
uncompress
gunzip
gzip
zless