Сравнение Папок Через Командную Строку
Я хочу сравнить две папки в Windows (Vista, XP), которые имеют большое количество огромных файлов, которые мне нужно сравнить. Если я использую Beyond Compare или такой инструмент для сравнения папок, это займет много времени, если я сделаю это вручную. Мне нужно добавить это сравнение папок в пакетный файл.
Итак, в Windows (XP, Vista) есть ли какая-либо команда (встроенная) или любой сторонний инструмент/утилита (коммерческая или бесплатная) для сравнения двух папок с помощью командной строки.
5 ответов
есть встроенная команда COMP
Что вы могли бы использовать. Это немного зависит от того, что вы действительно хотите сравнить.
сравнивает содержимое двух файлов или набор файлов.
COMP [data1] [data2] [/D] [/A] [/L] [/N=число] [/C]
data1 указывает местоположение и имя(имена) первого(ых) файла (ов) для сравнения.
data2 указывает местоположение и имя(имена) вторых файлов для сравнения.
/ D отображает различия в десятичный формат.
/A Дисплеи различия в символах ASCII.
/ L Отображает номера строк для различий.
/N=число сравнивает только первый заданное количество строк в каждой файл.
/ C игнорирует случай Буквы при сравнении файлов.
для сравнения наборов файлов используйте подстановочные знаки в data1 и data2 параметры.
использовать следующий синтаксис COMP c:\folder1 c:\folder2
для сравнения всех файлов в folder1
с содержанием folder2
. Если вам нужно рекурсировать в подкаталоги, вам нужно использовать пакетный скрипт, используя FOR
петли и PUSHD
и .
просто оставьте комментарий, если вам нужна помощь с этим.
forfiles /P %folder1Path% /S /C "cmd /c comp /a @path %folder2Path%\@file"
будет работать, но я не могу удалить запрос после первого сравнения.
мои два каталога имеют одинаковую структуру, всего несколько изменений версии файлов. Кроме того, мой каталог был просто папкой файлов python. Так что мне все сошло с рук...
$ cat dir1/*.py > file1.txt
$ cat dir2/*.py > file2.txt
$ diff file1 file2