linux 中 cmp命令
cmp命令用于判断两个文件是否相同
001、
(base) root@PC1:/home/test2# ls (base) root@PC1:/home/test2# seq 5 > a.txt; seq 3 > b.txt; seq 5 > c.txt ## 3个测试文件 (base) root@PC1:/home/test2# ls a.txt b.txt c.txt (base) root@PC1:/home/test2# cat a.txt 1 2 3 4 5 (base) root@PC1:/home/test2# cat b.txt 1 2 3 (base) root@PC1:/home/test2# cat c.txt 1 2 3 4 5 (base) root@PC1:/home/test2# cmp a.txt b.txt ## a。txt和b。txt不同 cmp: EOF on b.txt after byte 6, line 3 (base) root@PC1:/home/test2# cmp a.txt c.txt ## 如果相同,则不会输出任何内容
-s选项静默输出:
(base) root@PC1:/home/test2# ls a.txt b.txt c.txt (base) root@PC1:/home/test2# cat a.txt 1 2 3 4 5 (base) root@PC1:/home/test2# cat b.txt 1 2 3 (base) root@PC1:/home/test2# cmp a.txt b.txt cmp: EOF on b.txt after byte 6, line 3 (base) root@PC1:/home/test2# cmp -s a.txt b.txt ## 静默模式
0-03、结合if 条件判断
(base) root@PC1:/home/test2# ls a.txt b.txt c.txt (base) root@PC1:/home/test2# cat a.txt 1 2 3 4 5 (base) root@PC1:/home/test2# cat b.txt 1 2 3 (base) root@PC1:/home/test2# cat c.txt 1 2 3 4 5 (base) root@PC1:/home/test2# cmp -s a.txt b.txt (base) root@PC1:/home/test2# echo $? ## 静默输出, 判断为假 1 (base) root@PC1:/home/test2# cmp -s a.txt c.txt ## 静默输出 (base) root@PC1:/home/test2# echo $? ## 判断为真 0
区别:diff
(base) root@PC1:/home/test2# ls a.txt b.txt c.txt (base) root@PC1:/home/test2# cat a.txt 1 2 3 4 5 (base) root@PC1:/home/test2# cat b.txt 1 2 3 (base) root@PC1:/home/test2# cat c.txt 1 2 3 4 5 (base) root@PC1:/home/test2# diff a.txt b.txt 4,5d3 < 4 < 5 (base) root@PC1:/home/test2# echo $? ## 判断为假 1 (base) root@PC1:/home/test2# diff a.txt c.txt (base) root@PC1:/home/test2# echo $? ## 判断为真 0
分类:
linux shell
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律