Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] поиск совпадений в файлах

Ответить
Настройки темы
CMD/BAT - [решено] поиск совпадений в файлах

Пользователь


Сообщения: 57
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


доброго времени суток есть файлы sfv для проверки цельности файлов
иногда попадаются не совсем правильные файлы а именно
пример
1-bablablaa.rar 3ba66626
2-bablablaa.rar 2b4d5280
a.rar 2b4d5280
тоесть есть 2 совпадения
первые два файла существуют, третий нет и свидетельствует этому контрольная сумма (одинаковая)
мне надо чтоб искало (и создавало лог файл с полным путем этого неправильных .sfv) совпадения последних 8 символов в файлах, либо просто совпадения по второй колонке, так как разделитель пробел (наверно этот вариант легче)
файлов очень много и лежат они в субдиректориях

Отправлено: 15:48, 24-10-2014

 

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Что такое файлы sfv, откуда они берутся, как рассчитывается контрольная сумма?

Отправлено: 16:14, 24-10-2014 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 57
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


sfv это файлы которые дежат контрольные суммы crc32
https://ru.wikipedia.org/wiki/SFV
они уже скачаны из интернета. и проверяются стороними приложениями
по большому счету это маленькие тхт файлы
в них заложена инфа. но инфа бывает некоректна и тогда мне показывает что контрольные суммы не совпадают
но поскольку как в предыдущем примере сумма одинаковая значит и файл тот же. но название файла неправильное, я потом вручную проверяю по названию должен ли быть там файл

Отправлено: 17:39, 24-10-2014 | #3


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


shmel_sv@vk, как хотите, но всё одно непонятно. На конкретном примере попробуйте пояснить что ли…

Отправлено: 18:22, 24-10-2014 | #4


Пользователь


Сообщения: 57
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


наверно слишком много не нужной нифы написал
итак с самого начала и проще

есть текстовые файлы в которых нужно найти совпадения последних столбцов и вывести отчет

Отправлено: 22:30, 24-10-2014 | #5


Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@echo off

set "dir=D:\Test"
set "ext=.sfv"
set "log=list.log"

2>nul del "%log%"
pushd "%dir%"
for /f "delims=" %%i in ('"2>nul dir /a-d/b/s "*%ext%""') do call:sub "%%i"
popd

exit /b


:sub
 for /f "usebackq delims=" %%i in (%1) do (
  set x=%%i
  call findstr /ec:" %%x:~-8%%" %1| find /c /v ""| >nul findstr /vx 1&& (
  for /f "delims=" %%m in (%1) do >>"%~dp0%log%" echo %%m& exit /b
  )
  )

 exit /b
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:47, 24-10-2014 | #6

mwz mwz вне форума

Аватара для mwz

Ушел из жизни


Сообщения: 8595
Благодарности: 2127

Профиль | Сайт | Отправить PM | Цитировать


Цитата shmel_sv@vk:
первые два файла существуют, третий нет и свидетельствует этому контрольная сумма (одинаковая) »
Вы считаете что два совершенно разных файла не могут иметь одинаковую CRC32??
Про коллизии никогда не слышали?

-------
Mikhail Zhilin


Отправлено: 22:51, 24-10-2014 | #7


Пользователь


Сообщения: 57
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Georgio, спасибо, но чегото не работало
за 2 часа смог запилить такой батник, путем проб и ошибок и гуглу

findstr /s /e "[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]" %CD%\*.sfv >all.sfv.txt
sed -r "s/.+ //g" all.sfv.txt | sort | uniq -d -i > dup.sfv.txt
@>>dupe2check.sfv.txt findstr /i /g:dup.sfv.txt all.sfv.txt


всем спасибо!

Отправлено: 02:58, 25-10-2014 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] поиск совпадений в файлах

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - автоматический поиск и замена HEX в файлах Tosyk Скриптовые языки администрирования Windows 36 06-11-2021 05:49
Поиск слова в двух файлах david141 Вебмастеру 0 24-04-2012 02:41
Разное - Perl и поиск совпадений armandi Программирование и базы данных 3 24-06-2010 17:11
C/C++ - Поиск текста в файлах student_po Программирование и базы данных 6 04-09-2009 23:33
Поиск одинаковых кадров в видео-файлах wale Видео и аудио: обработка и кодирование 2 11-04-2009 22:00




 
Переход