通过使用'comm'命令来比较两个已排序的文件
导读 | Linux 中的 comm 命令可以让用户按行比较两个已经排序好的文件。在本教程中,我们将使用一些浅显易懂的例子来讨论这个命令行工具。在开始之前,请注意,本教程中提到的所有例子都已经在 Ubuntu 16.04LTS 版本中测试过。.
下面的例子将会告诉你 comm 命令是如何工作的。。 |
要使用comm 命令比较两个排序好的文件,只需要把它们的名字作为comm 命令的参数。下面是通常的语法:
comm [name-of-first-file] [name-of-second-file]
比如,假设file1 和file2 是这种情况下的两个文件。前者包含下面几行内容:
001 056 127 258
而后者包含下面几行内容:
002 056 167 369
此时,comm命令的输出如下图所示:
comm file1 file2
你可以看到,输出包含 3 列。第一列是仅包含在file1中的内容,第二列是仅包含在 file2 中的内容,最后,第三列是两个文件中均包含的内容。
如何不输出 comm 命令输出中的某些列如果你想,你可以不输出 comm命令输出中的某些列。对于该特性,你有三个命令行选项可用:-1、-2 和 -3 。正如你所猜想的,这些数字表示你不想输出的列。
比如,下面这个命令将会不输出上面例子中的第三列:
comm -3 file1 file2
因此,你可以看到,第三列并没有输出。
注意,你可以通过一个单一命令同时不输出多列内容。比如:
comm -12 file1 file2
上面这个命令将会不输出第一、二列。
如何使用 comm 命令比较两个未排序好的文件正如我们所知道的,comm 只可用于排序好的文件。如果发现其中一个文件未排序好,那么便会在输出中产生一条信息来告诉用户。比如,我们交换 file1 的第一行和第二行,然后与 file2 进行比较。下面是该命令的输出:
你可以看到,这个命令产生一个输出告诉我们:file1 还没有排序好。此时,如果你不想让这个工具检查输入是否已经排序好,那么你可以使用 --nocheck-order 选项:
comm --nocheck-order file1 file2
你可以看到,前面出现的提示信息已经消失了。
注意,如果你想明确告诉 comm 命令来检查输入文件是否排序好,那么你可以使用 --check-order选项。
如何用自定义字符串分隔comm 命令的输出列默认情况下,comm 命令的输出列之间是以空格分隔的。然而,如何你想使用一个自定义字符串作为分隔符,那么你可以使用 --output-delimiter选项。使用该选项时需要指定你想用来作为分隔符的字符串。
comm --output-delimiter=+ file1 file2
比如,我们使用加号来作为分隔符:
默认情况下,comm 命令的输出行以新行终止。然而,如果你想,那么你可以改为以 NUL
字符终止,只需要使用-z 选项即可:
comm -z file1 file2
comm 命令并没有特别多的特性性,我们在这儿已经讨论了它的绝大多数命令行选项。只需要理解和练习在这篇教程中讨论的内容,那么你便可以在日常工作中知道如何使用这个工具了。如果你有任何问题或者疑问,请前往该命令的 man 手册,或者在下面评论。
以上是通过使用'comm'命令来比较两个已排序的文件的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

CentOS 和 Ubuntu 的关键差异在于:起源(CentOS 源自 Red Hat,面向企业;Ubuntu 源自 Debian,面向个人)、包管理(CentOS 使用 yum,注重稳定;Ubuntu 使用 apt,更新频率高)、支持周期(CentOS 提供 10 年支持,Ubuntu 提供 5 年 LTS 支持)、社区支持(CentOS 侧重稳定,Ubuntu 提供广泛教程和文档)、用途(CentOS 偏向服务器,Ubuntu 适用于服务器和桌面),其他差异包括安装精简度(CentOS 精

CentOS 安装步骤:下载 ISO 映像并刻录可引导媒体;启动并选择安装源;选择语言和键盘布局;配置网络;分区硬盘;设置系统时钟;创建 root 用户;选择软件包;开始安装;安装完成后重启并从硬盘启动。

CentOS 已停止维护,替代选择包括:1. Rocky Linux(兼容性最佳);2. AlmaLinux(与 CentOS 兼容);3. Ubuntu Server(需要配置);4. Red Hat Enterprise Linux(商业版,付费许可);5. Oracle Linux(与 CentOS 和 RHEL 兼容)。在迁移时,考虑因素有:兼容性、可用性、支持、成本和社区支持。

Docker利用Linux内核特性,提供高效、隔离的应用运行环境。其工作原理如下:1. 镜像作为只读模板,包含运行应用所需的一切;2. 联合文件系统(UnionFS)层叠多个文件系统,只存储差异部分,节省空间并加快速度;3. 守护进程管理镜像和容器,客户端用于交互;4. Namespaces和cgroups实现容器隔离和资源限制;5. 多种网络模式支持容器互联。理解这些核心概念,才能更好地利用Docker。

如何使用 Docker Desktop?Docker Desktop 是一款工具,用于在本地机器上运行 Docker 容器。其使用步骤包括:1. 安装 Docker Desktop;2. 启动 Docker Desktop;3. 创建 Docker 镜像(使用 Dockerfile);4. 构建 Docker 镜像(使用 docker build);5. 运行 Docker 容器(使用 docker run)。

CentOS 停止维护后,用户可以采取以下措施应对:选择兼容发行版:如 AlmaLinux、Rocky Linux、CentOS Stream。迁移到商业发行版:如 Red Hat Enterprise Linux、Oracle Linux。升级到 CentOS 9 Stream:滚动发行版,提供最新技术。选择其他 Linux 发行版:如 Ubuntu、Debian。评估容器、虚拟机或云平台等其他选项。

VS Code 系统要求:操作系统:Windows 10 及以上、macOS 10.12 及以上、Linux 发行版处理器:最低 1.6 GHz,推荐 2.0 GHz 及以上内存:最低 512 MB,推荐 4 GB 及以上存储空间:最低 250 MB,推荐 1 GB 及以上其他要求:稳定网络连接,Xorg/Wayland(Linux)

Docker 使用容器引擎、镜像格式、存储驱动程序、网络模型、容器编排工具、操作系统虚拟化和容器注册表等技术来支持其容器化功能,提供轻量级、可移植且自动化的应用程序部署和管理。
