cmp 比较文件

作用

cmp 命令可以用来比较任何类型的文件,并在标准输出显示文件第一次不同处的行号和字节号,字节号从1开始。但是,该命令一般用来比较文本文件,判断两个文件是否相同以及查看不同之处的位置。

语法

cmp [-clsv][-i <字符数目>][--help][第一个文件][第二个文件]

参数

  • -c或--print-chars    除了标明差异处的十进制字码之外,一并显示该字符所对应字符

  • -i<字符数目>或--ignore-initial=<字符数目>    指定一个数目

  • -l或--verbose    标示出所有不一样的地方

  • -s或--quiet或--silent    不显示错误信息

  • -v或--version 显示版本信息

  • --help    在线帮助

示例

(1)假设当前目录下面存在 demo1 和 demo2 两个文件,使用 cmp 命令查看两个文件的差异

[hxstrive@localhost ~]$ cmp demo1 demo2
demo1 demo2 differ: byte 65, line 2

从上面输出信息可知,在第二行的第 65 个字节不同。

(2)比较两个文件是否相同,并显示不同点的详细信息

[hxstrive@localhost ~]$ cmp -l demo1 demo2
 65  54  40
 66  12  54
 67 110  12
 68 157 110
...
130  56 162
131  12  40
cmp: EOF on demo1 after byte 131

(3)分别从 demo1 的第 15 个字节和 demo2 的第 16 个字节开始比较两个文件

[hxstrive@localhost ~]$ cmp -l demo1 demo2 15 16
  1 151 156
  2 156  40
  3  40 141
...
115  56  40
116  12  56
cmp: EOF on demo1 after byte 116

注意:比较的文件必须存在。不能对目录进行比较,只能对文件进行比较。若一个文件的内容为空,即大小为0B,则将显示“cpm:EOF of file ***”。


更多关于命令详细参考手册,请使用 man 命令或者 --help 参数获取帮助信息

关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号