【上一篇】 |
The Begin 点点关注,收藏不迷路
|
【下一篇】 |
当相互比较的两个文件完全一样时,则该命令不会显示任何信息。若发现有所差异,默认会标示出第1个差异处的字节数和行数编号。若不指定任何文件名称,或是所给予的文件名为“-”,则cmp命令会从标准输人设备读取数据。
♻️ 相关命令: diff
包名称:diffutils
✅练习打卡:
1️⃣ 比较file02与file03两个文件的差异
[root@linux-commands filedir]# cmp file02 file03
[root@linux-commands filedir]# cmp file02 file04
2️⃣ 比较2个文件的差异,若有差异的地方,列出该字节
[root@linux-commands filedir]# cmp -c file02 file03
3️⃣ 列出2个文件所有差异的地方
[root@linux-commands filedir]# cmp -l file02 file03
diff默认会逐行比较文本文件的异同。此外,也可以指定要比较的目录,diff会比较目录中相同文件名的文件,但不会比较其中的子目录(若要连子目录一起比较,必须使用-r)
比较后若发现不同处,则会显示文件1与文件2中该行的内容。若以“-”取代文件名,则以标准输人来替代文件。
♻️ 相关命令: cmp,diffstat
包名称:diffutils
✅练习打卡:
文件比较
1️⃣ 列出file01及file02文件的内容(稍后将陆续用这两个文件作比较)并比较fle01与file02两个文件的异同
[root@linux-commands filedir]# cat file01
[root@linux-commands filedir]# cat file02
## 比较file01 file02
[root@linux-commands filedir]# diff file01 file02
0a1
A person has at least one dream, there is a reason to be strong.
[root@linux-commands filedir]#
2️⃣ 比较file01与file02两个文件,只列出有无差异,并不显示详细信息
[root@linux-commands filedir]# diff -q file01 file02
3️⃣ 比较file01与file02两个文件,将两个文件的全部内容分别显示在左右两侧
[root@linux-commands filedir]# diff -y file01 file02
4️⃣ 比较file01与file02两个文件,若两个文件某一行内容相同,则仅在左侧显示该行内容,若内容不同,则分别显示在左右两侧
[root@linux-commands filedir]# diff -y --left-column file01 file02
5️⃣ 比较file01与file02两个文件,只将两个文件不同的行分别显示在左右两侧
[root@linux-commands filedir]# diff -y --suppress-common-line file01 file02
6️⃣ 列出file01及file02文件的内容后将陆续利用这两个文件比较)比较file01与file01两个文件,显示不同之处前后部分的内文,并标出两个文件的不同之处
[root@linux-commands filedir]# cat file01
[root@linux-commands filedir]# cat file02
## 比较file01 file02
[root@linux-commands filedir]# diff -c file01 file02
7️⃣ 比较file01与file02两个文件,显示不同之处前后各2行的内文,并标出两个文件的不同处
[root@linux-commands filedir]# diff -c -2 file01 file02
8️⃣ 比较file01与file01两个文件,显示不同之处前后部分的内文,并将结果以合并的方式列出
[root@linux-commands filedir]# diff -u file01 file02
9️⃣ 比较file01与file02两个文件的异同,比较后显示不同之处前后各2行
的内文,并将结果以合并的方式列出
[root@linux-commands filedir]# diff -u -2 file01 file02
或者
[root@linux-commands filedir]# diff -U 2 file01 file02
1️⃣0️⃣ 比较file01、 file02两个文件的异同,但比较时不比较空白字符数目的不同
[root@linux-commands filedir]# diff -b file01 file02
1️⃣1️⃣ 比较file01、 file02两个文件的异同,但比较时不比较空白行数目的不同
[root@linux-commands filedir]# diff -B file01 file02
目录比较
1️⃣ 比较filedir01与filedir02两个目录中文件的异同
##显示filedir01与filedir02目录下的文件
##比较filedir01与filedir02两个目录
[root@linux-commands ~]# diff filedir01 filedir02
只在 filedir01 存在:dir1
只在 filedir01 存在:dir2
只在 filedir02 存在:file04
[root@linux-commands ~]#
2️⃣ 忽略文内大小写的差异
[root@linux-commands ~]# diff -is filedir01 filedir02
3️⃣ 在比较filedir01与filedir02目录中的文件时,若文本中包含“question”字符串,则忽略不比较该行
[root@linux-commands ~]# diff -I question -s filedir01 filedir02
4️⃣ 比较比较filedir01与filedir02目录中的文件,并以并列方式显示文件的相异之处
[root@linux-commands ~]# diff -y --suppress-common-lines filedir01 filedir02
5️⃣ 比较filedir01与filedir02两个目录下文件的异同,比较时连同子目录下的文件一并比较
[root@linux-commands ~]# diff -r filedir01 filedir02
6️⃣ 比较filedir01与filedir02两个目录下文件的异同,比较时忽略名称为filedir04 的文件
[root@linux-commands ~]# diff -x file04 filedir01 filedir02
❓ 该章详细介绍了【Linux命令】cmp、diff命令的使用,及有关参数详解。
【上一篇】 |
The end 点点关注,收藏不迷路
|
【下一篇】 |