Я пишу сценарий оболочки, используя язык сценариев оболочки Windows NT(ish). (Мой компьютер имеет Windows 10.) Я хочу проверить, идентичны ли два текстовых файла. Если файлы идентичны, я хочу, чтобы мой скрипт делал одно. Если файлы не идентичны, я хочу, чтобы мой скрипт делал что-то еще. Скрипт не должен останавливаться, чтобы запросить ручной ввод дополнительных данных.
В списке "Похожие вопросы" есть вопросы о скриптах для Macintosh и bash. Он также имеет ответ о запуске fc
или comp
из командной строки, которые предоставляют подробный вывод. К сожалению, fc
не возвращает результат в %errorlevel%
, иcomp
запрашивает ручной ввод данных вместо простого выхода.
У меня есть копия книги Тима Хилла о сценариях оболочки Windows NT. Страница 216 содержит следующую строку кода, где %D1%
и %D2%
являются каталогами, но я не знаю, как изменить его так, чтобы он работал только с одной парой файлов:
for /f "tokens=*" %%I in ('fc /b %D1%\*.* %D2%\*.* ^| find /v "Comparing" ^| find /v "FC: no*"') do (set /a ERRORS+=1) & (echo %%I)