我在Windows上使用notepad ++以UTF-8和ASCII格式保存了一个文本文件。该文本具有与UNIX版本相同的字母表示,据称与diff完全不同(例如1,267c1,267)。这些文件在二进制级别上实际上是不同的(xxd -b test.txt),但是vimdiff的结果与vim不同:它表明它们是相同的。我猜是因为vimdiff在对文件做差异之前呈现文本?为什么会出现这种不一致的情况?
答案 0 :(得分:1)
如果对-b
使用diff
选项,它将忽略前导和尾随空格,包括行尾字符的差异。如果这不能解决问题,您可以使用hd
(hexdump)或od -c
(八进制转储,显示ascii字符)仔细检查各个文件。
答案 1 :(得分:0)
检查您比较的文件中的行尾字符。可能是您在每行末尾用\r\n
保存了它们,而Unix版本以\n
终止。