Linux cmp命令用于比较两个文件是否有差异

Author: Bruce Liu Posted on: 2020-12-18 14:59:40 Visited: 207

Linux cmp命令用于比较两个文件是否有差异,使用参数可以对文件部分内容进行比较。

$ cmp --help
用法: cmp [选项]... 文件1 [文件2 [跳1 [跳2]]]
逐字节比较两个文件。

<跳1> 和 <跳2> 分别是每个文件要略过的字节数。

长选项的必需参数也是相应短选项的必需参数。
  -b  --print-bytes          打印出内容相异的字节
  -i, --ignore-initial=SKIP         两个输入内容都略过前 SKIP 字节
  -i, --ignore-initial=跳1:跳2      略过 <文件1> 的前 <跳1> 个字节和文件 <文件2>
                                    的前 <跳2> 个字节。
  -l, --verbose              输出所有相异字节的字节数和内容
  -n, --bytes=限制           最多比较 <限制> 个字节
  -s, --quiet, --silent      suppress all normal output
      --help                 显示此帮助信息并退出
  -v, --version              输出版本信息并退出

<跳> 值可以加上以下的单位:
kB=1,000、K=1,024、MB=1,000,000、M=1,048,576、GB=1,000,000,000、G=107,374,182,
还有 T、P、E、Z、Y,如此类推。

如果文件是 “-” 或没给出,则从标准输入读入内容。
如果输入相同,则退出状态为 0;1 表示输入不同;2 表示有错误产生。

命令示例

比较两个文件是否相同,并查看返回值

$ cmp 6M00.bin 6MFF.bin
6M00.bin 6MFF.bin 不同:第 1 字节,第 1 行

$ echo $?
1

$ cmp 6M00.bin 6M00.bin

$ echo $?
0

特殊用法,指定偏移位置,指定比较数量。

$ cmp -i 0:102 6M00.bin 6MFF.bin -n 100
6M00.bin 6MFF.bin 不同:第 1 字节,第 1 行

$ echo $?
1

 




Tags:
shell cmp

相关主题:

留言信息:

......期待您的留言!


增加留言、提问或者评论,不用注册,匿名提交,你提交的信息经过审核后才会显示:


© 2008-2022 CunYouLu存有录博客 村友录 存游录 鲁ICP备08005943号