Linux常用命令——comm命令

news2025/1/16 18:03:32

在线Linux命令查询工具

comm

两个文件之间的比较

补充说明

comm命令可以用于两个文件之间的比较,它有一些选项可以用来调整输出,以便执行交集、求差、以及差集操作。

  • 交集:打印出两个文件所共有的行。
  • 求差:打印出指定文件所包含的且不相同的行。
  • 差集:打印出包含在一个文件中,但不包含在其他指定文件中的行。

语法

comm [选项]... 文件1 文件2

选项

如果不附带选项,程序会生成三列输出。
第一列包含文件1 特有的行,
第二列包含文件2 特有的行,
而第三列包含两个文件共有的行。

  -1    不输出文件1 特有的行
  -2    不输出文件2 特有的行
  -3    不输出两个文件共有的行

--check-order     检查输入是否被正确排序,即使所有输入行均成对
--nocheck-order   不检查输入是否被正确排序
--output-delimiter=STR  依照STR 分列

参数

  • 文件1:指定要比较的第一个有序文件;
  • 文件2:指定要比较的第二个有序文件。

实例

文本aaa.txt内容

[root@localhost text]# cat aaa.txt 
aaa
bbb
ccc
ddd
eee
111
222

文本bbb.txt内容

[root@localhost text]# cat bbb.txt 
bbb
ccc
aaa
hhh
ttt
jjj

两个文件之间的比较,如果没有排序需要带上--nocheck-order参数, 没有带上参数将会收到提示,此命令重要之功能在于比较。

comm: 文件2 没有被正确排序
comm: 文件1 没有被正确排序

比较结果

[root@localhost text]# comm --nocheck-order aaa.txt bbb.txt 
aaa
                bbb
                ccc
        aaa
ddd
eee
111
222
        hhh
        ttt
        jjj
第一列  第二列  第三列

输出的第一列只包含在aaa.txt中出现的行,第二列包含在bbb.txt中出现的行,第三列包含在aaa.txt和bbb.txt中相同的行。各列是以制表符(\t)作为定界符。

有序比较

有序比较,先通过 sort 将文件内容排序

[root@localhost ~]# sort aaa.txt > aaa1.txt
[root@localhost ~]# sort bbb.txt > bbb1.txt

有序比较结果:

[root@localhost ~]# comm aaa1.txt bbb1.txt
111
222
		aaa
		bbb
		ccc
ddd
eee
	hhh
	jjj
	ttt

交集

打印两个文件的交集,需要删除第一列和第二列:

[root@localhost text]# comm aaa.txt bbb.txt -1 -2
bbb
ccc

求差
打印出两个文件中不相同的行,需要删除第三列:

[root@localhost text]# comm aaa.txt bbb.txt -3 | sed 's/^\t//'
aaa
aaa
ddd
eee
111
222
hhh
ttt
jjj

sed 's/^\t//'是将制表符\t删除,以便把两列合并成一列。

差集

通过删除不需要的列,可以得到aaa.txt和bbb.txt的差集:
aaa.txt的差集

[root@localhost text]# comm aaa.txt bbb.txt -2 -3
aaa
ddd
eee
111
222

bbb.txt的差集

[root@localhost text]# comm aaa.txt bbb.txt -1 -3
aaa
hhh
ttt
jjj

在线Linux命令查询工具

在线Linux命令查询工具

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1104483.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Django REST Framework完整教程-认证与权限-JWT的使用

文章目录 1.认证(Authentication)与权限(Permission)1.1.视图添加权限1.2.登录验证1.3.常用DRF自带权限类1.4.自定义权限类1.5.全局权限1.6.函数视图权限 2.认证详解2.1.认证方案2.2.如何使用TokenAuthentication? 3.JSON Web Token(JWT)认证3.1.工作原理3.2.安装3.…

【MySQL】分析SQL的几种方式

文章目录 一、查看SQL执行频率二、定位低效率执行SQL1. show processlist2. 慢查询日志 三、explain分析执行计划1. id2. select_type3. type4. key5. extra 四、show profile 一、查看SQL执行频率 show session status:显示 session 级的统计结果(不写…

分享261个Python源码源代码总有一个是你想要的

链接:https://pan.baidu.com/s/14t-pmuphJQ-ouqQlOuwtiA?pwd8888 提取码:8888 项目名称 AI悦创Python小项目代码 AI视频创作ffmpegopenai-whispertts Apache Superset数据探查与可视化平台 v2.0.1 API Star工具箱 v0.7.2 Archery SQL审核查询平台 …

星型灯/南瓜灯/饰品灯/圣诞灯,各国检测标准有哪些?

星型灯/南瓜灯/饰品灯/圣诞灯,各国检测标准有哪些? 圣诞装饰灯作为热销产品,出于库存考虑,美国80%进口灯饰的采购在8-10月完成,而中国产品占这些进口灯饰的85%左右,并且几乎所有LED灯都来自中国…

无法访问 github ,解决办法

一、使用代理(首选) 这种办法只需要更改github.com为代理的域名即可,使用方式与GitHub除了域名不同其他都一样,速度挺快,可登陆,可提交。 1、查看当前的代理: git config --global --get htt…

分享135个游戏Python源代码总有一个是你想要的

分享135个游戏Python源代码总有一个是你想要的 链接:https://pan.baidu.com/s/1rQuDok6XRWp-7RzFAfew8w?pwd8888 提取码:8888 游戏项目名称 100%基于Python的,模仿元气骑士的游戏 Chinese Chess Xiangqi 中国象棋 Python Firefly是…

c语言-消息队列

一、消息队列的介绍 消息队列的实现原理是将消息存储在一个队列中,生产者将消息放入队列的尾部,消费者从队列的头部取出消息进行处理。消息队列通常采用先进先出(FIFO)的方式进行消息的存储和处理。消息队列可以实现异步通信&…

软件安全性测试包含哪些类型?2023年专业软件安全测试报告获取

在现今信息化时代,软件安全性问题愈加引起人们的重视。为了确保软件的安全性,软件安全性测试成为不可或缺的一环。   软件安全性测试是指对软件系统进行全面、系统、综合的安全性评估和控制,旨在发现和证明软件系统存在的漏洞和安全隐患&am…

linux 下的java gate服务断掉的原因及解决思路

一.查询断掉的原因 1.查看gate日志,发现没有报错信息,突然就断了 2.查看是不是OOM导致 dmesg | grep java 发现确实Out of Memory了 3.发生问题的原因: 默认情况下, Linux kernels(内核)允许进程申请的量超过系统可用内存. 这是因为,在大多数…

成都瀚网科技有限公司:开抖音店铺有哪些注意事项?

成功经营一个小店不仅仅是发布产品视频那么简单,还需要注意一些重要的事情。开抖音店铺需要注意以下几点: 1、开抖音店铺有哪些注意事项? 合规管理:在抖音开店,首先要确保自己的运营合规。遵守相关法律法规及平台规定&…

【Linux进行时】进程控制

1.进程创建&#xff1a; 1.1fork函数 在linux中fork函数时非常重要的函数&#xff0c;它从已存在进程中创建一个新进程。新进程为子进程&#xff0c;而原进程为父进程。 \#include <unistd.h> pid_t fork(void); 返回值&#xff1a;子进程中返回0&#xff0c;父进程返…

coreldraw2023永久免费版安装包下载

有小伙伴在用电脑查找软件程序的时候&#xff0c;看到了一款叫cdr软件的应用&#xff0c;自己之前没接触过&#xff0c;不知道cdr是什么软件&#xff1f;cdr软件是干什么的&#xff1f;十分好奇。其实它是一款平面设计软件&#xff0c;下面就给大家介绍下相关的cdr软件的知识。…

Spanner: Google’s Globally Distributed Database

1. INTRODUCTION Spanner可以扩展到跨数百个数据中心的数百万台机器与数万亿个数据库行。 Spanner是一个可伸缩、全球化分布的数据库&#xff0c;其由Google设计、构建、并部署。在抽象的最高层&#xff0c;Spanner是一个将数据分片&#xff08;shard&#xff09;到分布在全世…

C语言实现输入一个整数,输出该整数的所有素数因子。例如,输入 120, 输出 2、3 、5

完整代码&#xff1a; //输入一个整数&#xff0c;输出该整数的所有素数因子。例如&#xff0c;输入 120, 输出 2、3 、5 #include<stdio.h>//判断一个数n是否为素数 int isPrimeNumber(int n){//1不是素数if (n1){return 0;}for (int i 2; i <(n/2); i){//当有n能被…

E048-论坛漏洞分析及利用-针对Wordpress论坛插件实现远程代码执行的探索

课程名称&#xff1a; E048-论坛漏洞分析及利用-针对Wordpress论坛插件实现远程代码执行的探索 课程分类&#xff1a; 论坛漏洞分析及利用 实验等级: 中级 任务场景: 【任务场景】 小王接到磐石公司的邀请&#xff0c;对该公司旗下论坛进行渗透测试&#xff0c;已经发现…

基于STM32F103C8T6的BLDC驱动硬件设计

一、STM32F103C8T6简介&#xff1a; STM32F103C8T6是意法半导体公司&#xff08;ST&#xff09;推出的基于Cortex-M3内核的32位微控制。CPU内核&#xff1a;ARM Cortex-M3&#xff1b;CPU最大主频&#xff1a;72MHz &#xff1b;工作电压范围&#xff1a;2V~3.6V &#xff1b;程…

华为OD机试 - 欢乐的周末 - 深度优先搜索dfs算法(Java 2023 B卷 200分)

目录 专栏导读一、题目描述二、输入描述三、输出描述四、深度优先搜索dfs五、解题思路六、Java算法源码七、效果展示1、输入2、输出3、说明4、如果修改一下呢&#xff1f;5、来&#xff0c;TFBOYS&#xff0c;试一下&#xff1f; 华为OD机试 2023B卷题库疯狂收录中&#xff0c;…

Vue-router快速入门 是什么 如何跳转 如何传值的问题

3.1 Vue-router是什么 Vue-router:Vue.js 的官方路由为 Vue.js 提供富有表现力、可配置的、方便的路由 官网&#xff1a;https://router.vuejs.org/zh/ 作用&#xff1a; 1.实现vue页面(组件)的跳转 2.可以在跳转的时候携带参数 3.2 Vue3使用Vue-router(静态路由) 基于Vu…

PythonOcc + pyqt 显示——stp step文件导入 部件识别 爆炸图展示

使用 occ 7.4.0 版本,pyqt5, 解决了init 缺少window_handle 的问题,另外添加一个左边的显示窗口 import ctypes import logging import os import sysfrom OCC.Display import OCCViewer from PyQt5 import QtCore, QtGui, QtOpenGL, QtWidgets# check if signal available, …

电脑技巧:PrivaZer电脑清理工具介绍(附下载)

今天给大家推荐一款非常实用的电脑垃圾清理工具&#xff0c;感兴趣的朋友可以下载看看&#xff01; 下载&#xff1a;飞猫盘&#xff5c;文件加速传输工具&#xff5c;云盘&#xff5c;橘猫旗下新概念云平台 一、软件介绍 PrivaZer是一款免费好用的老牌清理软件&#xff0c;除…