关于比较文件diff命令

diff命令的功能为逐行比较两个文本文件,列出其不同之处。它对给出的文件进行系统的检查,并显示出两个文件中所有不同的行。在最简单的情况下,diff比较两个文件的内容(源文件和目标文件)。文件名可以是 - 由标准输入设备读入的文本,作为特别的情况是 diff - - 比较一份标准输入的它自己的拷贝。如果源文件是一个目录而目标文件不是,diff会比较在源文件里的文件和目标文件同名的文件。如果源文件和目标文件都是目录,diff比较两个目录中相应的文件,这个比较不会是递归的,除非给出 -r 或者 --recursice。diff大多数的选项有两个相同的名字,一个是单个跟在-后面的字母,一个是由--引出的长名字。

-a      所有文件都以文本文件来逐行比较

-b      忽略空格引起的变化

-B      忽略空行引起的变化

--brief      仅报告文件是否相异,在乎差别的细节

-c       使用上下文输出格式

-i       忽略大小写

-I regexp     忽略由插入、删除行带来的改变

--ignore-all-space      在比较行的时候忽略空白

--ignore-case      忽略大小写

 -q      仅报告文件是否相异,不报告详细的差异

-r        当比较目录时,递归比较任何找到的子目录

-w       在比较行时忽略空格

-W columns --width=columns      在并列格式输出时,使用指定的列宽

-u , -U lines ,--unified=lines      以合并的方式来显示文件内容的不同,使用统一的输出格式

-y       使用并列格式输出

在比较结果里字母(a、d和c)之前的行号是针对from file的,其后面的行号是针对to file的。字母a、d和c分别表示附加、删除和修改操作。以”<”打头的行属于第一个文件,以”>”打头的行属于第二个文件。

猜你喜欢

转载自zerojava.iteye.com/blog/1078298