博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理

cmp命令详解

Posted on 2018-12-30 15:01  面具下的戏命师  阅读(2714)  评论(0编辑  收藏  举报

Linux cmp命令

Linux cmp命令用于比较两个文件是否有差异。主要用来比较两个二进制文件

当相互比较的两个文件完全一样时,则该指令不会显示任何信息。若发现有所差异,预设会标示出第一个不同之处的字符和列数编号。若不指定任何文件名称或是所给予的文件名为"-

",则cmp指令会从标准输入设备读取数据

用法:

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

参数:

-b  --print-bytes    打印差异字节

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

-i SKIP  --ignore-initial=SKIP  跳过输入的第一个字节

-i SKIP1:SKIP2  --ignore-initial=SKIP1:SKIP2   跳过文件1的第一个SKIP1字节和文件2的第一个SKIP2字节

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

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

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

--help  在线帮助。

********

skip1和skip2是每个文件中要跳过的字节数。跳过值后面可以是以下乘法后缀:

kb 1000,k 1024,mb 1000000,m 1048576,

GB 100000000、G 1073741824等,适用于T、P、E、Z、Y。

********

实例:

1、要确定两个文件是否相同,请输入:

cmp file1 file2

如果文件相同,则不显示消息。如果文件不同,则显示第一个不同的位置;例如:

[root@mysql linux]# cmp file file1
file file1 differ: byte 3, line 2

2、跳过每个文件中的字节

cmp -i 1k file file1