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版
相关文章
- Java读写XML文件的四种方式(DOM、SAX、JDOM、DOM4J)简述与比较
- 兼容oracle的edit_distance_similarity 比较两个字符串相似度
- Java_SSH之Hibernate_002_06:一对多实体类和映射文件、一对多数据保存讲解、inverse的作用、用映射文件描述两个类之间的关系
- 【工具】JAVA 在单元读取文件并比较
- 文本文件和二进制文件比较
- 如何快速读取含有非法字符文本文件的一行,该文件通常比较大。
- 怎么在oracle中存储比较大的文本文件
- 如何设计算法比对两个文本文件的内容
- Java编程:比对两个文本文件,标记相同和不同之处
- 求助arm-linux-gcc-3.4.1 如何交叉编译具有两个依赖库的文件?