Автоматизировать сравнение поврежденных файлов

После неудачного анализа CHKDSK, который повредил много файлов на жестком диске 3 ТБ (ошибочно определен как 746 ГБ, вероятно, из-за несовместимости контроллера USB2 с емкостью более 2 ТБ), я хотел бы провести точное сравнение этих файлов (с их правильными аналогами). на резервном жестком диске) и извлеките поврежденные области для дальнейших исследований, прежде чем удалять их.
Пока что я действовал так:

  • Откройте обе версии файла в WinHex. Активируйте экран "Синхронизировать и сравнить".
  • Запустите сравнение со смещением 0, сохраните отчет (обязательно с этим программным обеспечением, нет возможности напрямую найти следующую разницу) с именем файла, укажите ограничение в 10000 ошибок (чтобы избежать слишком больших отчетов).
  • Как только он остановится (достигнув конца файла или предела в 10000 различных байтов), откройте отчет TXT, скопируйте смещение первой разницы в меню WinHex "Перейти к смещению". Отметьте первую ошибку (которая всегда находится на границе сектора) как начало блока.
  • Найдите конец поврежденной области, прокрутив вниз или, если это займет слишком много времени, добавив 1 МБ или 100 КБ, пока я выйду, а затем прокрутите вверх (я не нашел способа облегчить это в WinHex). Отметьте конец последнего сектора поврежденной области как конец блока.
  • Извлеките блок как новый файл с шаблоном "Name_of_the_file [1111-2222]", где "1111-2222" - смещения начала конца.
  • Возобновите сравнение в конце ранее выявленной поврежденной области, чтобы искать другие, до конца файла...

Теперь, есть ли способ автоматизировать этот кропотливый и трудоемкий процесс? Существуют ли другие шестнадцатеричные редакторы, лучше подходящие для сравнения файлов? Или я мог бы использовать скрипт, чтобы сделать это все сразу? Я нашел небольшой блестящий инструмент командной строки под названием dsfok (DS File Ops Kit), который может извлекать блок данных между двумя значениями смещения (среди других функций, которые я еще не тестировал). Поэтому мне понадобится другой инструмент командной строки для сравнения и получения этих значений смещения, а также советы по написанию сценария для совместной работы этих инструментов. Благодарю.

0 ответов

Другие вопросы по тегам