diff:比较两个文件

diff:比较两个文件

diff(difference)实用工具用来对两个文件进行比较,显示两者所有的不同之处,但并不改变任何一个文件的内容。这对比较两封信、两个报告或程序源代码的两个版本很有帮助。
diff实用工具带上-u(unified output format,统一输出格式)选项后,执行结果将首先说明要比较的两个文件,其中一个用正号(+)表示,另一个用负号(-)表示。如图所示,负号代表文件color.1,正号代表文件color.2。

$ cat color.1
red
green
yellow
pink
purple
orange

$ cat color.2
red
blue
green
yellow
orange

$ diff -u color.1 color.2
--- color.1    2011-03-02 13:17:40.931090002 +0800
+++ color.2    2011-03-02 13:18:22.631090002 +0800
@@ -1,6 +1,5 @@
 red
+blue
 green
 yellow
-pink
-purple
 orange

图中,命令diff -u将具有多行的较长文件分成几块(hunk),每一个块前面一行的开始和结束都是符号“@@”,其中的数字表明了块开始的行号和后续的行数,数-1和6表明该块包括文件color.1(由负号指明)的第1行开始的6行(总共6行),数+1和5表明该块包括文件color.2的第1行开始的5行。
这些块信息之后,命令diff -u显示了几行文本信息,有的行始于正号,有的行始于负号,有的行正负号都没有。带正号的行表明其仅出现在正号代表的文件内,带负号的行表明其仅出现在负号代表的文件内,正负号都没有出现的行表示其出现在两个文件的相同位置。关于diff的更多信息可以参见其info页。

参考资料:
《Red Hat Linux指南:基础与系统管理篇》115-116页,Mark G. Sobell著,杨明军 张杰良等译,人民邮电出版社,2008年10月第1版
posted @ 2011-03-02 14:18  UniMouS  阅读(4273)  评论(0编辑  收藏  举报

版权所有 © 2011-2012 方一曙

Copyright © 2011-2012 Fang Yishu (UniMouS)