我有两个文本文件。我想检查两个文件是否具有相同的内容。 例如:文件1有:
1 232
32 14
222 4
文件2有:
1 232
32 14
222 4
然后输出"正确"否则"不正确"。
答案 0 :(得分:2)
fc file1 file2 >nul&&echo Correct||echo Incorrerct
如果没有找到差异,FC命令将返回成功(ERRORLEVEL 0),如果发现差异,则返回错误(ERRORLEVEL 1)。我将输出重定向到NUL,因为您只想知道文件是否相同 - 您不需要查看差异列表。
有许多选项可以修改比较类型。这是文档:
<强> FC 强>
比较两个文件并显示它们之间的差异。
语法
fc [/a] [/b] [/c] [/l] [/lbn] [/n] [/t] [/u] [/w] [/nnnn] [drive1:][path1]filename1 [drive2:][path2]filename2
参数
/a
:缩写ASCII比较的输出。 fc不显示所有不同的行,而是仅显示每组差异的第一行和最后一行。
/b
:比较二进制模式下的文件。 Fc逐字节地比较这两个文件,并且在找到不匹配之后不会尝试重新同步文件。这是用于比较具有以下文件扩展名的文件的默认模式:.exe,.com,.sys,.obj,.lib或.bin。
/c
:忽略字母大小写。
/l
:比较ASCII模式下的文件。 Fc逐行比较两个文件,并在发现不匹配后尝试重新同步文件。这是比较文件的默认模式,但具有以下文件扩展名的文件除外:.exe,.com,.sys,.obj,.lib或.bin。
/lbn
:设置内部行缓冲区的n行数。行缓冲区的默认长度为100行。如果您要比较的文件的连续不同行数超过此数量,则fc将取消比较。
/n
:显示ASCII比较期间的行号。
/t
:阻止fc将制表符转换为空格。默认行为是将制表符视为空格,并在每个第八个字符位置停止。
/u
:将文件作为Unicode文本文件进行比较。
/w
:在比较期间压缩空格(即制表符和空格)。如果一行包含许多连续的空格或制表符,/ w会将这些字符视为单个空格。当与/ w命令行选项一起使用时,fc忽略(并且不比较)行开头和结尾的空格。
/nnnn
:指定在fc考虑重新同步文件之前必须匹配的连续行数。如果文件中匹配行的数量小于nnnn,则fc将匹配行显示为差异。默认值为2.
[drive1:][path1]filename1
:指定要比较的第一个文件的位置和名称。文件名1是必需的。
[drive2:][path2]filename2
:指定要比较的第二个文件的位置和名称。文件名2是必需的。
/?
:在命令提示符下显示帮助。
答案 1 :(得分:1)
您可以使用“fc”命令执行此操作
fc file1.txt file2.txt
它会报告发现的差异或通知您有关文件匹配的信息。