1、命令简介
CMP :cmp命令有用于比较两个任意类型的文件,若两个文件相同则默认不输出任何信息,若两个文件不同,则会输出第一个不同之处的字符和列数编号,结果输出到标准输出。
注意:若不指定任何文件名称或是所给予的文件名为-
,则cmp命令会从标准输入设备读取数据。
2、命令用法
cmp options... FromFile [ToFile]
3、命令描述
cmp
逐字符报告两个文件之间的差异,而不是逐行。因此,在比较二进制文件时,它比diff
更有用。对于文本文件,cmp
主要在只想知道两个文件是否相同时有用。对于相同的文件,cmp
不产生输出。当文件不同时,默认情况下,cmp
输出第一个差异出现的字节偏移量和行号。可以使用-s
选项来抑制该信息,这样cmp
就不会产生输出,并仅使用其退出状态来报告文件是否不同。与diff
不同,cmp
不能比较目录;它只能比较两个文件。
4、命令选项
help | 显示帮助 |
-v/--version | 显示版本信息 |
-s/--quit/--silent | 不显示错误信息 |
-l/--verbose | 标示出所有不一样的地方 |
-i/--ignore-initial | 指定一个数目 |
-c/--print-chars | 除了标明差异处的十进制字码之外,一并显示该字符所对应字符 |
5、使用示例
比较两个文件,如果文件相同,则不显示消息。如果文件不同,则显示第一个不同的位置,如下,
[root@kvm4 ~]# cmp file file1
file file1 differ: byte 3, line 2
$ cat 1.txt
https://www.cjavapy.com
$ cat 2.txt
http://www.cjavapy.com
$ cmp 1.txt 2.txt
1.txt 2.txt differ: char 5, line 1