Нужно то-нибудь совсем примитивное, чтобы запускать по расписанию. Содержимое файлов в папках не нужно сравнивать, только их даты и размеры. Лог должен быть совсем примитмвным: или ОК, или не ОК. Если не ОК, то я сравню вручную и определю, какие различия.
Если в логе будет больше одной строки, то это сильно затруднит его обработку, потому что я соберу эти логи в один с нескольких десятков серверов. Этот суммарный лог нужно просматривать одним взглядом.
CMD/BAT - [решено] Сравнение папок из коммандной строки с логом
-
kiripanda
Re: CMD/BAT - [решено] Сравнение папок из коммандной строки с логом
Код:
Код: Выделить всё
set "src=c:\src"
set "dst=z:\dst"
for /f "delims=" %%a in ('echo n^|xcopy "%src%" "%dst%" /dsl') do (
if "%%a" == "0 файл(а,ов)" (
echo OK "%src%" "%dst%">log.log
) else (
echo FU "%src%" "%dst%">log.log
goto:eof
)
)-
nbds
Re: CMD/BAT - [решено] Сравнение папок из коммандной строки с логом
Изящно!
Но не работает... думаю, проблема вот здесь:
Цитата kiripanda:
"0 файл(а,ов)"
А в англоязычной версии будет "0 file(s)" ?
Но все равно не работает. Фукает и когда папки идентичны, и когда различаются.
Но не работает... думаю, проблема вот здесь:
Цитата kiripanda:
"0 файл(а,ов)"
CMD/BAT - [решено] Сравнение папок из коммандной строки с логом
А в англоязычной версии будет "0 file(s)" ?
Но все равно не работает. Фукает и когда папки идентичны, и когда различаются.
-
kiripanda
Re: CMD/BAT - [решено] Сравнение папок из коммандной строки с логом
что пишет xcopy c:\src z:\dst /dsl на одинаковых папках?
есть источник-назначение или папки должны синхронизироваться при изменении в любой из них?
есть источник-назначение или папки должны синхронизироваться при изменении в любой из них?
-
kiripanda
Re: CMD/BAT - [решено] Сравнение папок из коммандной строки с логом
Цитата kiripanda:
что пишет xcopy c:\src z:\dst /dsl на одинаковых папках?
Пишет "0 File(s)" и таким образом все работает. Наверное, это case sensitive, потому и не работало.
Вообще решение очень хорошее, я считал, что нужно пользоваться сторонними программами и даже и не подумал, что этого можно добиться с помощью xcopy.
Вообще-то эта проблемя - паранойя моего начальства. Эти две папки синхронизируются с помощью robocopy. Все проверено вручную много раз и все работает, но он хочет запустить еще и дополнительную проверку.
Кстати, если я хочу исключить из проверки несколько файлов, могу ли я пользоваться /EXCLUDE ?
что пишет xcopy c:\src z:\dst /dsl на одинаковых папках?
CMD/BAT - [решено] Сравнение папок из коммандной строки с логом
Пишет "0 File(s)" и таким образом все работает. Наверное, это case sensitive, потому и не работало.
Вообще решение очень хорошее, я считал, что нужно пользоваться сторонними программами и даже и не подумал, что этого можно добиться с помощью xcopy.
Вообще-то эта проблемя - паранойя моего начальства. Эти две папки синхронизируются с помощью robocopy. Все проверено вручную много раз и все работает, но он хочет запустить еще и дополнительную проверку.
Кстати, если я хочу исключить из проверки несколько файлов, могу ли я пользоваться /EXCLUDE ?
-
nbds
Re: CMD/BAT - [решено] Сравнение папок из коммандной строки с логом
kiripanda, огромное спасибо! Работает и с /EXCLUDE .