Linux基础命令[10]-cmp

文章目录

    • 1. cmp 命令说明
    • 2. cmp 命令语法
    • 3. cmp 命令示例
      • 3.1 不加参数
      • 3.2 -b(显示不同的字节)
      • 3.3 -i(跳过字节)
      • 3.4 -l(显示所有不同)
      • 3.5 -n(比较n个字节)
      • 3.6 -s(不显示信息)
    • 4. 总结

1. cmp 命令说明

cpm(compare):比较两个文件是否完全一致,基本信息如下:

Usage: cmp [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]
Compare two files byte by byte.-b  --print-bytes  Print differing bytes.-i SKIP  --ignore-initial=SKIP  Skip the first SKIP bytes of input.-i SKIP1:SKIP2  --ignore-initial=SKIP1:SKIP2Skip the first SKIP1 bytes of FILE1 and the first SKIP2 bytes of FILE2.-l  --verbose  Output byte numbers and values of all differing bytes.-n LIMIT  --bytes=LIMIT  Compare at most LIMIT bytes.-s  --quiet  --silent  Output nothing; yield exit status only.-v  --version  Output version info.--help  Output this help.SKIP1 and SKIP2 are the number of bytes to skip in each file.
SKIP values may be followed by the following multiplicative suffixes:
kB 1000, K 1024, MB 1,000,000, M 1,048,576,
GB 1,000,000,000, G 1,073,741,824, and so on for T, P, E, Z, Y.If a FILE is `-' or missing, read standard input.Report bugs to <bug-gnu-utils@gnu.org>.

参数如下:

选项作用
-b显示不同的字节
-i跳过n个字节再比较
-l显示所有不同处
-n比较n个字节数量的内容
-s不显示任何信息

2. cmp 命令语法

cmp [选项] 文件1 文件2

3. cmp 命令示例

3.1 不加参数

不加参数时,会显示两个文件第一个不同

cmp 文件1 文件2

在这里插入图片描述

3.2 -b(显示不同的字节)

这个也是显示第1个不同的地方,不过信息详细一下,会显示不同的字节序号。

cmp -b 文件1 文件2

在这里插入图片描述

3.3 -i(跳过字节)

-i 后面加一个数字,表示跳过这些字节再进行比较,也只显示第1个不同的位置,并且是减去跳过的字节数的位置。

cmp -i n 文件1 文件2

在这里插入图片描述

3.4 -l(显示所有不同)

一个不同是一行数据

cmp -l 文件1 文件2

在这里插入图片描述

3.5 -n(比较n个字节)

这个参数适合大文件比较,也是只显示找到的第1个不同。

cmp -n 数字 文件1 文件2

在这里插入图片描述

3.6 -s(不显示信息)

单独这条命令是没有任何信息输出的

cmp -s 文件1 文件2

在这里插入图片描述

其他它的用途是要配合 if 语句使用的。例如 test.sh:

if cmp -s 1.log 1.log.bak
thenecho "没有差异"
elseecho "有差异"
fi

运行结果就是:没有差异

在这里插入图片描述

-s 具体的返回值如下,test2.sh:

cmp -s 1.log 1.log.bak
return_value=$?
echo "无差异返回值:"$return_valuecmp -s 1.log 2.log
return_value2=$?
echo "有差异返回值:"$return_value2cmp -s 1.log 3.log
return_value3=$?
echo "异常返回值:"$return_value3

结果:

无差异返回值:0
有差异返回值:1
异常返回值:2

在这里插入图片描述

4. 总结

cmp 比较两个文件差异。

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

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

相关文章

el-select 不能重复选择

el-select 不能重复选择&#xff0c;注意&#xff1a;删除后可以再次重新被选择 <el-form-item><el-select v-model"attribute.attributeSelect" change"changeSelect()" placeholder"请选择属性分组" clearable><el-optionv-fo…

PostgreSQL restartpoint 原理详解

背景 大部分人对 PG 的 checkpoint 机制会熟悉一点&#xff0c;但是对 restartpoint 却不太熟悉&#xff0c;网上介绍这方面的文章也比较少。因此&#xff0c;本文将以 PG 14.7 的社区代码为基础&#xff0c;介绍 PG 中的 restartpoint 机制。 原理介绍 什么是 restartpoint…

华为OD技术面试案例1-2024年

背景&#xff1a; 学校背景&#xff1a;211本科工作经验&#xff1a;1年半转行目标&#xff1a;测试岗位 一、机考 &#xff08;得分&#xff1a;350&#xff09; 二、01.04 hr面 自我介绍选择东莞的原因对OD&#xff08;华为研发岗位&#xff09;的看法家庭情况简历相关问…

信息论笔记:信息量+熵+相对熵+交叉熵+损失函数

信息论 信息量 I(x) -log( P )I为信息量P为x发生的概率 熵 混乱程度的度量&#xff0c;不确定的局面表示很混乱系统里信息量的期望值H(x) -sum( P(i) * log( P(i) ) ) 相对熵(KL散度) 用于度量两个概率分布间的差异性信息D_KL(S | O) sum( P_S(x) * log_2( 1 / P_O(x)…

Mysql学习之各种锁

锁 事务的隔离性由锁来实现 MySQL并发事务访问相同记录 并发事务访问相同记录的情况大致可以分为3种&#xff1a; 读-读的情况 读-读情况&#xff0c;即并发事务相继读取相同的记录。读取操作本身不会对记录由有任何的影响&#xff0c;并不会引起什么问题&#xff0c;所以允许…

简要讲解OV7725摄像头

本文主要包含以下几部分内容&#xff1a; 1. 通过OV7725分析模块原理图。 2. 讲解部分寄存器的含义、RGB565格式图像输出时序、帧率计算。 3. 讲解SCCB协议与I2C协议的区别。 1、OV7725功能 OV7725是一款1/4英寸单芯片图像传感器&#xff0c;其感光阵列达到640*480&#xff0c…

LibreOJ 137. 最小瓶颈路(加强版) 题解 Kruscal重构树 ST表

声明&#xff1a;本题目是LibreOJ 136. 最小瓶颈路 题解 最小生成树 倍增加强版&#xff0c;建议先学习简单版的做法。 题目链接&#xff1a;LibreOJ 137. 最小瓶颈路&#xff08;加强版&#xff09; 题目描述&#xff1a; 给定一张无向图&#xff0c;询问两个结点之间的最小瓶…

【MySQL 系列】在 Windows 上安装 MySQL

在 Windows 平台上安装 MySQL 很简单&#xff0c;并不需要太复杂的步骤。按照本文的步骤操练起来就可以了。 文章目录 1、下载 MySQL 安装程序2、安装 MySQL 数据库2.1、选择安装类型2.2、检查所需组件2.3、安装所选产品组件2.4、产品配置2.5、配置高可用性2.6、配置服务器类型…

【leetcode】 剑指 Offer学习计划(java版本含注释)(下)

目录 前言第十六天&#xff08;排序&#xff09;剑指 Offer 45. 把数组排成最小的数&#xff08;中等&#xff09;剑指 Offer 61. 扑克牌中的顺子&#xff08;简单&#xff09; 第十七天&#xff08;排序&#xff09;剑指 Offer 40. 最小的k个数&#xff08;简单&#xff09; 第…

c++11多线程:call_once

文章目录 call_once示例一示例二 call_once std::call_once是 C11 标准库中的一个函数&#xff0c;用于确保某个函数只会被调用一次。 单例设计模式是一种常见的设计模式&#xff0c;用于确保某个类只能创建一个实例。由于单例实例是全局唯一的&#xff0c;因此在多线程环境中…

YOLO系列中的“data.yaml”详解!

专栏介绍&#xff1a;YOLOv9改进系列 | 包含深度学习最新创新&#xff0c;主力高效涨点&#xff01;&#xff01;&#xff01; 一、data.yaml介绍 YOLO系列中的data.yaml文件包含了YOLO系列模型运行所需要的数据集路径、数据集中的类别数及标签。数据集路径可以用绝对路径也可以…

Python实现股票信息查询

目前两个常用的股票信息CPI&#xff1a; 腾讯行情CTPAPI接口源码 新浪行情CTPAPI 使用requests模块爬取股票信息&#xff0c;这里以查询股票市值为例。 一、根据股票名称查询股票代码 在python文件夹下设置两个表格GPLIST.xlsx&#xff0c;其中是A股全部代码和股票名称&#…

如何在飞书接入ChatGPT并结合内网穿透实现公网远程访问智能AI助手

文章目录 前言环境列表1.飞书设置2.克隆feishu-chatgpt项目3.配置config.yaml文件4.运行feishu-chatgpt项目5.安装cpolar内网穿透6.固定公网地址7.机器人权限配置8.创建版本9.创建测试企业10. 机器人测试 前言 在飞书中创建chatGPT机器人并且对话&#xff0c;在下面操作步骤中…

MySQL 高可用解决方案(双主双从)

1.环境说明 操作系统&#xff1a;centos7.7 主服务器&#xff1a;node2(192.168.1.102) 从服务器&#xff1a;node3(192.168.1.103) keepalived中虚拟ip(VIP):192.168.1.100 2.准备事项 主库和从库数据库的版本一致把主库的数据同步给从库一份 #对主库进行全局读锁定 FLUSH…

GEE代码条带问题——sentinel-1接缝处理的问题

问题 我有兴趣确定 NDVI 损失最大的年份。我创建了一个函数来收集所有陆地卫星图像并应用预处理。当我导出结果以识别 NDVI 损失最大年份时&#xff0c;生成的数据产品与陆地卫星场景足迹有可怕的接缝线。造成这种情况的原因是什么以及如何调整代码&#xff1f; sentinel1数据…

flutter之终极报错

看到这个报错头都大了 一开始在网上各种搜搜&#xff0c;然后有人说是flutter版本的问题&#xff0c;改完版本之后还是不对&#xff0c;又是各种搜搜搜 有人说是环境变量的问题&#xff0c;后来改了环境变量&#xff0c;妈的&#xff0c;竟然还不行&#xff0c;想砸电脑的心都…

Xcode :Could not build module ‘WebKit‘ 已验证解决

问题&#xff1a;Could not build module WebKit 具体报错如下&#xff1a; error: type argument nw_proxy_config_t (aka struct nw_proxy_config *) is neither an Objective-C object nor a block type property (nullable, nonatomic, copy) NSArray<nw_proxy_config_…

C++学习笔记:set和map

set和map set什么是setset的使用 关联式容器键值对 map什么是mapmap的使用map的插入方式常用功能map[] 的灵活使用 set 什么是set set是STL中一个底层为二叉搜索树来实现的容器 若要使用set需要包含头文件 #include<set>set中的元素具有唯一性(因此可以用set去重)若用…

【java-面试题】start和run的区别

【java-面试题】start和run的区别 在run方法内部&#xff0c;只是单纯的描述了该线程要执行的内容。run方法是线程的入口。 在start方法内部&#xff0c;会调用到系统api&#xff0c;从而在系统内核中创建出线程&#xff0c;创建线程后&#xff0c;再自动调用run方法。 在代码…

掌握未来技术:一站式深度学习学习平台体验!

介绍&#xff1a;深度学习是机器学习的一个子领域&#xff0c;它模仿人脑的分析和学习能力&#xff0c;通过构建和训练多层神经网络来学习数据的内在规律和表示层次。 深度学习的核心在于能够自动学习数据中的高层次特征&#xff0c;而无需人工进行复杂的特征工程。这种方法在图…