检查 gzip 文件而不解压缩:zcat、zless 和 zmore

2023-10-22

Linux 提供了多个用于处理压缩文件的命令,例如 zcat、zless 和 zmore。

本教程将深入探讨这些命令的用法,让您可以导航和检查压缩文件,而无需解压缩它们。

下表总结了这 3 种工具之间的差异:

Tool Description Primary Use(s) Interactive Searching Capabilities
zcat Displays compressed file content to stdout. Quick content viewing, Piping data. No No (unless piped)
zless Interactive viewer for compressed files. Deep dives into file content with scrolling, searching, and line jumps. Yes Yes
zmore Simple pager for compressed files. Basic page-by-page viewing of gzipped content. Somewhat No

 

 

zcat简介

zcat类似于标准cat命令但旨在读取gzip压缩文件。

默认情况下,zcat解压缩数据并将结果写入标准输出。


$ zcat file.txt.gz
  

当您运行此命令时,压缩的内容file.txt.gz终端上显示。

如果您尝试使用cat在 gzip 压缩的文件中,你会得到乱码,因为cat不知道如何即时解压。

何时使用 zcat 来解压文件

Using zcat有其优点,特别是在处理大型压缩文件时。

  • 节省空间:如果磁盘空间不足,解压缩大文件可能不可行。和zcat,您可以直接查看内容,无需解压版本的额外空间。
  • 节省时间:解压缩文件需要时间。通过使用zcat,您可以直接访问内容,跳过解压过程。

强制读取文件

zcat提供了一个选项-f强制读取文件,即使它们没有压缩。

当您混合有压缩文件和未压缩文件并且想要使用单个命令读取它们时,这非常有用。


$ zcat -f *.log
  

如果 *.log 包含 gzip 压缩日志文件和纯文本日志文件的混合,则这将解压缩 gzip 压缩日志文件并原封不动地传递纯文本日志文件。

使用管道过滤输出

您可以通过管道输出zcat用于过滤、搜索或其他操作的其他命令。


$ zcat file.txt.gz | grep "search_term"
  

使用此命令,您可以直接在压缩文件中搜索包含“search_term”的行。

此方法非常有效,因为它允许您在压缩文件内部进行搜索,而无需解压缩它们。

 

zless简介

zless是压缩文件的交互式寻呼机。这非常类似于less命令,但专门用于读取 gzip 压缩文件。


$ zless file.txt.gz
  

该命令打开压缩包file.txt.gz在交互式查看模式下,允许您滚动浏览其内容。

zless允许您交互式地检查压缩内容。

滚动、搜索、跳转到行号

在 - 的里面zless环境中,您拥有一组丰富的控件:

  • 滚动:使用箭头键逐行滚动或使用空格键逐页滚动。
  • 正在搜索:要查找特定术语,请输入/接下来是您的搜索词。按n移动到下一个出现的位置并且N对于前一个。
  • 跳转到行号:输入所需的行号,然后输入G直接跳到该行。

这些控件反映了less,确保在查看压缩文件和未压缩文件之间切换时的无缝体验。

配置和定制

zless允许您配置您的观看体验:

  • 更改显示颜色:您可以设置LESS_TERMCAP环境变量来自定义配色方案。例如,将搜索突出显示设置为蓝色:

export LESS_TERMCAP_so=$(tput setaf 4)
  
  • 自定义按键绑定: While zless默认值对于许多人来说已经足够了,您可能更喜欢一组自定义的键绑定。通过设置LESSKEY将环境变量添加到键绑定文件中,您可以定义您的个人快捷方式。
  • 设置默认选项:如果您发现自己总是使用特定的less选项,您可以将它们设为默认值zless通过将它们导出到LESS环境变量。例如:

export LESS='-N -g'
  

Here, -N显示行号,以及-g仅突出显示最后一个搜索模式。

 

兹莫简介

zmore提供了另一种检查压缩文件的方法,用作简单的寻呼机。不像zless, zmore提供基本的寻呼功能。


$ zmore file.txt.gz
  

执行上述命令将显示压缩后的部分内容file.txt.gz在您的终端上。当到达显示部分的末尾时,按space查看文件的更多内容。

zmore为 gzip 压缩文件提供了简单的“更多”功能,因此具有命名约定。

滚动、搜索和其他基本控件

zmore被设计为一个简单的工具,因此,与zless。以下是您将使用的主要控件:

  • 滚动: Press space滚动到文件的下一部分。
  • 正在搜索:不幸的是,直接应用内搜索本身不支持zmorezless。但是,将其与其他工具结合使用(例如,zgrep)可以帮助搜索。
  • Exit:退出zmore,只需按q.

While zmore可能看起来很简单,但当您只需要快速浏览一下压缩文件而无需额外功能的开销时,它的简单性可能是一种资产。

与 zcat 或 zgrep 一起使用

zmore可以与其他实用程序配合使用以增强其功能:

  • 与 zcat 结合:为了快速查看和后续分页,您可以组合zcat with zmore.

$ zcat file.txt.gz | zmore
  

这允许您首先将文件解压缩到标准输出,然后使用zmore.

  • 使用 zgrep 搜索: While zmore缺乏本地搜索,zgrep填补了这一空白。要搜索然后翻阅结果:

$ zgrep "search_term" file.txt.gz | zmore
  

这样,您将看到包含“search_term”的行并可以翻阅它们。

 

选择正确的工具

选择正确的工具取决于手头的任务:

  • 快速内容查看:如果您只需要快速显示压缩文件的全部内容,zcat是工具。
  • 互动探索:要更深入地、交互式地深入了解内容,您可能需要滚动、搜索或跳转到特定行,zless是最好的选择。
  • 基本分页:如果您正在寻找一种简单的方法来翻阅 gzip 压缩文件而不增加复杂性,zmore是选择。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检查 gzip 文件而不解压缩:zcat、zless 和 zmore 的相关文章

随机推荐

  • 在基于 RHEL 的系统上配置 EPEL 存储库

    Extra Packages for Enterprise Linux EPEL 是一个在线存储库 为企业 Linux 系统提供高质量的常用软件包 这些软件包是在 Fedora 上开发和测试的 Fedora 可用于 RHEL EPEL 存储
  • 如何通过 PPA 在 Ubuntu 18.04 和 16.04 上安装 MongoDB 4.4

    MongoDB 是一个完全灵活的索引支持和丰富的查询数据库 Mongodb 是一个 NoSQL 数据库 MongoDB 通过 GridFS 提供大型媒体存储 点击here有关此版本 MongoDB 的更多详细信息 本教程将帮助您在 Ubun
  • 如何在 Ubuntu 18.04 和 16.04 LTS 上安装 Webmin

    Webmin是一个类似于 CPanel 的网络托管控制面板 它提供了易于使用的界面来管理类 Unix 系统 Webmin 非常易于使用 轻量级应用程序可以在一分钟内轻松安装到系统上 Webmin 删除了所有通过命令行完成的手动任务 本文将帮
  • 如何检查 OpenSSH 版本

    OpenSSH是一个安全的网络实用程序 用于使用 SSH 协议进行远程登录 这是大多数基于 Linux 的系统用于远程 SSH 登录的主要工具 OpenSSH 为您提供通过 SSH 协议连接远程系统的选项 它提供了两个系统之间通信的端到端加
  • 如何在 CentOS/RHEL 9/8/7 上安装 NRPE

    NRPE Nagios Remote Plugin Executor 是一个 Nagios 插件 用于在远程主机上远程执行插件和脚本 这允许您监视远程主机上的资源 例如磁盘使用情况 CPU 负载和网络活动 在本文中 我们将向您展示如何在 C
  • 如何在 Ubuntu 20.04 中安装 PostgreSQL 和 pgAdmin4

    PostgreSQL是一个强大 可靠 健壮且开源的对象关系数据库系统 该数据库系统的最新版本是 PostgreSQL 13 2 而版本 12 6 11 11 10 16 9 6 21 和 9 5 25 仍在定期更新 本教程介绍如何在 Ubu
  • 如何在 Ubuntu 和 Debian 中切换 Python 版本

    Python 是一种高级编程语言 广泛用于系统编程 它适用于所有流行的操作系统 您可以在单个系统上安装多个 Python 版本 安装多个 Python 版本后 您可以使用 update alternatives 工具切换默认 Python
  • 如何在 CentOS 7 上安装和使用 Docker

    Docker 是一种容器化技术 可让您快速构建 测试和部署应用程序 作为可移植 自给自足的容器 几乎可以在任何地方运行 在本教程中 我们将介绍如何在 CentOS 7 上安装 Docker CE 并探索基本的 Docker 概念和命令 先决
  • 如何在 CentOS 8 上安装 CouchDB

    Apache CouchDB 是由 Apache 软件基金会开发的免费开源 NoSQL 数据库 它可以用作单节点或集群数据库 CouchDB 服务器将其数据存储在命名数据库中 其中包含具有以下内容的文档JSON结构 每个文档由许多字段和附件
  • 如何在 Ubuntu 20.04 上安装 Kvm

    KVM 基于内核的虚拟机 是内置于 Linux 内核中的开源虚拟化技术 使用 KVM 运行多个 Linux 或 Windows 来宾虚拟机 每个来宾都与其他来宾完全隔离 并拥有自己的操作系统和专用虚拟硬件 例如 CPU 内存 网络接口和存储
  • 如何在 Ubuntu 20.04 上安装 OpenCV

    OpenCV 开源计算机视觉库 是一个开源计算机视觉库 绑定了 C Python 和 Java 并支持所有主要操作系统 它可以利用多核处理并具有 GPU 加速功能来实现实时操作 OpenCV 的应用范围很广 包括医学图像分析 拼接街景图像
  • 如何在 Debian 10 Linux 上添加交换空间

    交换空间是磁盘上的空间 当物理内存已满时使用 当 Linux 系统耗尽 RAM 时 非活动页面将从 RAM 移至交换空间 交换空间可以采用专用交换分区或交换文件的形式 通常 运行 Debian 虚拟机时不存在交换分区 因此唯一的选择是创建交
  • 如何在 CentOS 8 上安装 Apache Maven

    Apache Maven 是一个开源项目管理和理解工具 主要用于 Java 项目 Maven 使用项目对象模型 POM 它本质上是一个 XML 文件 其中包含有关项目 配置详细信息 项目依赖项等的信息 在本教程中 我们将解释如何在 Cent
  • 如何在 Ubuntu 18.04 上安装 TensorFlow

    TensorFlow是由 Google 构建的免费开源机器学习平台 许多组织都在使用它 包括 Twitter PayPal 英特尔 联想和空中客车公司 TensorFlow 可以在 Python 虚拟环境中安装在系统范围内 作为Docker
  • Linux 中的 Chattr 命令(文件属性)

    在 Linux 中 文件属性是描述文件行为的元数据属性 例如 属性可以指示文件是否被压缩或指定文件是否可以被删除 一些属性 如不变性 可以设置或清除 而其他属性 如加密 是只读的 只能查看 对某些属性的支持取决于所使用的文件系统 本文介绍了
  • 在Ubuntu上安装RPM包

    Ubuntu 存储库包含数千个 deb 软件包 可以从 Ubuntu 软件中心或使用apt命令行实用程序 Deb 是所有基于 Debian 的发行版 包括 Ubuntu 都使用的安装包格式 有些软件包在标准 Ubuntu 存储库中不可用 但
  • 如何检查PHP版本

    PHP 是最常用的服务器端编程语言之一 PHP 版本之间存在一些重要差异 因此在某些情况下可能需要了解您的服务器上运行的是哪个版本 例如 如果您在开始安装之前升级应用程序或安装需要特定 PHP 版本的新应用程序 则需要找出 PHP 服务器的
  • 如何在 Debian 10 Linux 上安装 Google Chrome 网络浏览器

    谷歌浏览器是世界上最流行的网络浏览器 它是专为现代网络打造的快速 直观且安全的浏览器 Chrome 不是开源浏览器 并且不包含在官方 Debian 存储库中 它是基于Chromium 一个开源浏览器 可在默认 Debian Buster 存
  • 如何在 Ubuntu 中将用户添加到 Sudoers

    sudo是一个命令行程序 允许受信任的用户以 root 或其他用户身份执行命令 在本文中 我们将向您展示两种向用户授予 sudo 权限的方法 第一个是将用户添加到sudoers 文件 该文件包含控制向哪些用户和组授予 sudo 权限以及权限
  • 检查 gzip 文件而不解压缩:zcat、zless 和 zmore

    Linux 提供了多个用于处理压缩文件的命令 例如 zcat zless 和 zmore 本教程将深入探讨这些命令的用法 让您可以导航和检查压缩文件 而无需解压缩它们 下表总结了这 3 种工具之间的差异 Tool Description P