Linux系统中使用cmp和comm命令来比较两个文件

cmp

cmp 命令:比较任意两个类型的文件,且吧结果输出到标准输出,默认文件相同不输出,不同的文件输出差异

必要参数

-c 显示不同的信息

-l 列出所有的不同信息

-s 错误信息不提示

选择参数

-i<字符数> 指定字符数目

-v 显示版本信息

--help 显示帮助信息

【函数的返回值】

0 :文件时同样的

1 :文件是不同的

>1:发生错误

例:

代码如下:

[root@localhost www]# cmp test1.rb test.rb #比较二个文件的不同

test1.rb test.rb differ: byte 1, line 1

[root@localhost www]# cmp -l test1.rb test.rb #显示所有不同

1 160 162

2 165 145

3 164 161

4 163 165

5 40 151

6 42 162

7 150 145

8 145 40

9 153 42

10 153 155

11 153 171

12 42 163

13 12 161

cmp: EOF on test1.rb

comm

comm - 逐行比较两个已排序的文件

逐行比较 已排序的 文件 LEFT_FILE 和 RIGHT_FILE.

-1

屏蔽 左边文件 【LEFT_FILE】 中 不同于 右边文件 的 行【或内容】

-2

屏蔽 右边文件 【RIGHT_FILE】 中 不同于 左边文件 的 行【或内容】

-3

屏蔽 两个文件 中 相同 的 行【或内容】

【译注: 原文为 "不相同的行", 疑有误】

-l

认为 输入数据 根据 当前的 locale 排了序 【应该 给 sort 提供 -l 选项】.

--help

显示 帮助信息, 然后 结束

--version

显示 版本信息, 然后 结束

例:

代码如下:

[root@localhost www]# comm test.rb test1.rb #比较二个文件

Linux系统中使用cmp和comm命令来比较两个文件