当没有差异时,diff 显示的差异

6
这两个文件在比较时显示为不同。
diff d_out.txt D_out.txt

我使用的是Ubuntu(12.10)终端。

d_out.txt的内容如下:

ABCADBACDABCADBACDAB
ABCABCABCABCABCABCAB
CRASH
CRASH
CRASH
ABCDCABADCDBABCDCABA
ABCDBACBDABCDBACBDAB
ABCCABBCAABCCABBCAAB
ABCDDCBAABCDDCBAABCD
CRASH
CRASH
ABCDEEDABCCBEDAADCBE
ABCCAABCCAABCCAABCCA
ABBCCABBCCABBCCABBCC
ABCDEFFABCDEEFABCDDE
AABCDEFFABCDEEFABCDD
ABBCDEFAABCDEFFABCDE
ABBCCDDEDDCCBBABBCCD
CRASH
CRASH
ABCDEFGBADCFEBGDAFCB
ABCDEBADCBEDABCDEBAD
ABCDBADCABCDBADCABCD
ABCDEFGHIABCDEFGHIAB
ABCDEFGHIJABCDEFGHIJ
ABCDEFGHIJKABCDEFGHI
ABCDEFGHIJKLMNOPQRSA
CRASH
AABBCCDCCBBAAEAABBCC
AABBCCDCCBBAAEAABBCC

D_out.txt的内容

ABCADBACDABCADBACDAB
ABCABCABCABCABCABCAB
CRASH
CRASH
CRASH
ABCDCABADCDBABCDCABA
ABCDBACBDABCDBACBDAB
ABCCABBCAABCCABBCAAB
ABCDDCBAABCDDCBAABCD
CRASH
CRASH
ABCDEEDABCCBEDAADCBE
ABCCAABCCAABCCAABCCA
ABBCCABBCCABBCCABBCC
ABCDEFFABCDEEFABCDDE
AABCDEFFABCDEEFABCDD
ABBCDEFAABCDEFFABCDE
ABBCCDDEDDCCBBABBCCD
CRASH
CRASH
ABCDEFGBADCFEBGDAFCB
ABCDEBADCBEDABCDEBAD
ABCDBADCABCDBADCABCD
ABCDEFGHIABCDEFGHIAB
ABCDEFGHIJABCDEFGHIJ
ABCDEFGHIJKABCDEFGHI
ABCDEFGHIJKLMNOPQRSA
CRASH
AABBCCDCCBBAAEAABBCC
AABBCCDCCBBAAEAABBCC

这段文字最初来自于一个用于解决竞赛问题的程序。D_out.txt文件是原始的评测输出,d_out.txt是我编写的解决该问题的程序的输出。我尝试找到小的差异,但没有找到。


请提供 diff d_out.txt D_out.txt 的输出结果。 - Dmitry Zagorulkin
这似乎是一个换行符差异问题--您是否尝试在两个文件上使用dos2unix并计算这些更改后的文件的差异? - fge
没有区别的文件;请使用 diff (GNU diffutils) 3.2 运行。 - Rubens
请尝试使用 diff -Bby d_out.txt D_out.txt。 - Sean
我同意Rubens的观点。请检查您的文件是否存在空格或其他隐藏字符!(使用 od -x d_out.txt > d_out.hex 等命令和比较 *.hex 文件) - Mats Petersson
2个回答

13

这些文本是相等的。

diff 输出了什么?你可能有一些额外的空格。

尝试一下

diff -w -B d_out.txt D_out.txt

-w 忽略所有空格。

-B 忽略行全为空白的更改。

查看不同的diff选项


2
尝试使用vimdiff。它会突出显示尾随空格的任何可能差异。

vimdiff file1 file2。只有这个回答对我有帮助。谢谢。 - Binita Bharati

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接