如何比较批处理文件中的两个文件?

Cor*_*ker 17 comparison if-statement file batch-file

如何比较批处理文件中的两个文件,并根据它们是否匹配执行操作?我尝试过类似的东西:

if file1.txt NEQ file2.txt goto label
Run Code Online (Sandbox Code Playgroud)

但它比较实际的字符串"file1.txt"而不是文件.我已经阅读了关于COMP命令的内容,但是如果我把它放在if语句中它似乎不起作用.有人知道怎么做这个吗?抱歉,我很少使用批处理文件,对它们的经验很少.

提前致谢.

mat*_*t_h 32

我相信你可以使用"FC"命令,然后检查errorlevel.这是一些代码:

@echo off
:main
fc c:\filename r:\filemame > nul
if errorlevel 1 goto error

:next
echo insert next CD
pause
goto main

:error
echo failed check
Run Code Online (Sandbox Code Playgroud)

(来自http://www.computing.net/answers/dos/batch-file-command/15753.html)

  • @CraigMcQueen取自[命令行参考](http://ss64.com/nt/fc.html):" - 1:语法无效(例如,只传递一个文件); 0:文件相同.; 1:文件不同.; 2:找不到至少一个文件." (2认同)