linux下比较两个文本文件的不同——diff命令

庚拓天下 庚拓天下     2022-09-19     423

关键词:

1>Diff命令的功能
Linux中Diff命令的功能为逐行比较两个文本文件,列出其不同之处。它对给出的文件进行系统的检查,并显示出两个文件中所有不同的行,不要求事先对文件进行排序。

2>语法
diff [options] file1 file2

该命令告诉用户,为了使两个文件file1和file2一致,需要修改它们的哪些行。如果用”-”表示file1或file2,则表示标准输入。如果file1或file2是目录,那么diff将使用该目录中的同名文件进行比较。

3>[options]主要参数

-a:将所有文件当作文本文件来处理。

-b或–ignore-space-change  忽略空格造成的不同。

-B或–ignore-blank-lines  忽略空行造成的不同。

-c:使用纲要输出格式。

-H:利用试探法加速对大文件的搜索。

-I:忽略大小写的变化。

-n –rcs:输出RCS格式。

-N或–new-file  在比较目录时,若文件A仅出现在某个目录中,会显示:Only in目录;文件A若使用-N参数,则diff会将文件A与一个空白的文件比较。

-r或–recursive  比较子目录中的文件。

-u,-U<列数>或–unified=<列数>  以合并的方式来显示文件内容的不同。

4>使用方法的实例说明

例如: diff /usr/xu mine

把目录/usr/xu 中名为mine的文件与当前目录中的mine文件进行比较。

通常输出由下述形式的行组成:

n1 a n3,n4

n1,n2 d n3

n1,n2 c n3,n4 这些行类似ed命令把filel转换成file2。字母(a、d和c)之前的行号(n1,n2)是针对file1的,其后面的行号(n3,n4)是针对file2的。字母a、d和c分别表示附加、删除和修改操作。

在上述形式的每一行的后面跟随受到影响的若干行,以”<”打头的行属于第一个文件,以”>”打头的行属于第二个文件。

diff能区别块和字符设备文件以及FIFO(管道文件),不会把它们与普通文件进行比较。

如果file1和file2都是目录,则diff会产生很多信息。

5>diff最常用的功能

diff有很多功能平时我们不常用到,最常用的功能莫过于生成patch文件了:

diff -urN old/ new/ > mysoft.patch
参数 -u 表示使用 unified 格式,-r 表示比较目录,-N 表示将不存在的文件当作空文件处理,这样新添加的文件也会出现在patch文件中。

然后在需要应用patch的地方使用下述命令即可:

patch -p0 < mysoft.patch

diff的 -y 命令(长格式为 –side-by-side)可以将屏幕分成左右两部分,来比较两个文件之间的差异。许多图形化的比较工具都有这个功能,但如果只能使用命令行,这个参数就相当有用了。如果要改变左右各部分的宽度,可以通过 -W (–width)参数来指定。
–ignore-blank-lines 参数可以不检查空白行。这样DOS格式和Unix格式的文件互相比较时,就不至于因为换行符不一致而出现大量的差异。
本文来源于时光漂流瓶 http://www.9usb.net , 原文地址: http://www.9usb.net/200903/linux-diff.html 

linux文件比较命令的diff命令

参考技术A1>diff命令的功能linux中diff命令的功能为逐行比较两个文本文件,列出其不同之处。它对给出的文件进行系统的检查,并显示出两个文件中所有不同的行,不要求事先对文件进行排序。2>语法diff[options]file1file2该命令... 查看详情

diff命令

diff命令在最简单的情况下,比较给定的两个文件的不同。如果使用“-”代替“文件”参数,则要比较的内容将来自标准输入。diff命令是以逐行的方式,比较文本文件的异同处。如果该命令指定进行目录的比较,则将会比较该目... 查看详情

linux命令比较两个文件

1、cmp命令  通过比较字节比较文件例:  设置两个不同的文件,通过cmp命令来执行   在屏幕上会显示第几行不同 2、diff一行一行的比较两个文件 如:会溴铵是具体哪些行不同 3、vimdiff 会在屏幕上显示... 查看详情

linux文本对比diff命令详解(整理)(代码片段)

...可以使用,例如常用的BeyondCompare,WinMerge都是图形界面的比较工具而且使用非常方便,如果你仅仅是在windows下工作,这些GUI的比较工具绝对是首选。对于在linux环境下工作的人来说,如果每次想看两个文件的区别都要将文件下载... 查看详情

读懂diff(代码片段)

 diff是UNIX系统下很重要的工具程序。diff命令比较文本文件。它能比较单个文件或者目录内容,一般用于版本控制,可以比较两个版本间的代码差异,并制作成补丁文件。diff命令时代码版本管理的基石之一。我们可以在命令... 查看详情

linuxdiff命令

使用diff命令来比较两个不同的二进制文件,会发生什么?解释为什么二进制文件的diff输出与ascii文件的diff输出不同?参考技术A如果两个二进制文件相同,diff就什么也不显示,否则只简单报告一下这两个文件是不相同的。diff命... 查看详情

linux使用diff命令怎么比较文件

Y:diff命令●简介★diff命令用于比较文件的差异。★diff以逐行的方式,比较文本文件的异同处。如果指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录。●语法★命令格式:diff[参数][文件1或目录1][... 查看详情

linux中两个文档怎么对比内容是不是一致

...对比文档内容。[语法]:diff[参数]文件1文件2[说明]:本命令比较两个文本文件,将不同的行列出来-b将一串空格或TAB转换成一个空格或TAB-e生成一个编辑角本,作为ex或ed的输入可将文件1转换成文件2[例子]:difffile1file2diff-bfile1file2diff-e... 查看详情

linux中两个文档怎么对比内容是否一致

...对比文档内容。[语法]:diff[参数]文件1文件2[说明]:本命令比较两个文本文件,将不同的行列出来-b将一串空格或TAB转换成一个空格或TAB-e生成一个编辑角本,作为ex或ed的输入可将文件1转换成文件2[例子]:difffile1file2diff-bfile1file2diff-e... 查看详情

diff命令和patch命令的使用

参考技术Adiff命令是linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方。diff在命令行中打印每一个行的改动。最新版本的diff还支持二进制文件。diff程序的输出被称为补丁(patch),因... 查看详情

linux下比较命令(代码片段)

Linux下比较命令diff功能比较文件差异。语法diff[-abBcdefHilnNpPqrstTuvwy][-<行数>][-C<行数>][-D<巨集名称>][-I<字符或字符串>][-S<文件>][-W<宽度>][-x<文件或目录>][-X<文件>][–help][–left-column][–suppress-commo... 查看详情

每天一个linux命令(36):diff命令

diff 命令是 linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方。diff在命令行中打印每一个行的改动。最新版本的diff还支持二进制文件。diff程序的输出被称为补丁 (patch)... 查看详情

diff是啥意思

diff是什么意思参考技术Adiff命令比较文本文件。它能比较单个文件或者目录内容。注:diff命令只有当输入为文本文件时才有效。如果指定了Directory1和Directory2参数,diff命令比较两个目录下名字相同的文本文件。列出不同的二进制... 查看详情

diff比较两个文件的不同

1.命令功能diff逐行比较文件内容,并输出文件差异。2.语法格式diff option  file1   file2diff 选项  文件1  文件2参数说明参数参数说明-y以并列方式显示文件的异同之处-W在使用-y时,指定显示... 查看详情

linuxdiff3-比较3个文件不同的地方(代码片段)

推荐:更多Linux 文件查找和比较 命令关注:linux命令大全 diff3命令用于比较3个文件,将3个文件的不同的地方显示到标准输出。 语法diff3(选项)(参数)选项-a:把所有的文件都当做文本文件按照行为单位进行比较,... 查看详情

diff(patch):比较两个文件之间的区别(补丁)

...加上-b选项,将文件自动备份为以.orig为后缀的文件patch-b比较文件diff文件patch:将diff文件中的相同和与之不同信息恢复,并命名为“比较文件” 查看详情

diff比较两个文件的差异

功能:比较两个文件的差异,并把不同地方的信息显示出来。默认diff格式的信息。diff比较两个文件或文件集合的差异,并记录下来,生成一个diff文件,这也是我们常说的补丁文件。也使用patch命令对相应的文件打补丁。differenti... 查看详情

diff命令详解(代码片段)

Linuxdiff命令Linuxdiff命令用于比较文件的差异。diff以逐行的方式,比较文本文件的异同处。如果指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录用法:diff[-abBcdefHilnNpPqrstTuvwy][-<行数>][-C<行数&... 查看详情