
이후3TB HDD의 많은 파일을 손상시킨 불행한 CHKDSK 분석(USB2 컨트롤러가 2TB 이상의 용량과 호환되지 않기 때문에 746GB로 잘못 감지됨) 해당 파일을 정확하게 비교하고(백업 HDD에 있는 해당 파일과) 손상된 영역을 추출하여 추가 작업을 수행하고 싶습니다. 조사한 후 삭제하세요.
지금까지는 다음과 같이 진행했습니다.
- WinHex에서 두 버전의 파일을 모두 엽니다. "동기화 및 비교" 디스플레이를 활성화합니다.
- 오프셋 0에서 비교를 실행하고 파일 이름으로 보고서를 저장하고(이 소프트웨어에서는 필수이며 다음 차이점을 직접 찾을 수 없음) 오류 제한을 10000개로 지정합니다(보고서가 너무 커지는 것을 방지하기 위해).
- 중지되면(파일 끝 또는 10000개의 다른 바이트 제한에 도달) TXT 보고서를 열고 첫 번째 차이의 오프셋을 WinHex의 "오프셋으로 이동" 메뉴에 복사합니다. 첫 번째 오류(항상 섹터 경계에 있음)를 블록의 시작으로 표시합니다.
- 아래로 스크롤하여 손상된 영역의 끝을 검색하거나, 나갈 때까지 1MB 또는 100KB를 추가한 다음 위로 스크롤하여 너무 오래 걸리는 경우 검색합니다(WinHex에서는 이 작업을 더 쉽게 만들 수 있는 방법을 찾지 못했습니다). 손상된 영역의 마지막 섹터 끝을 블록 끝으로 표시합니다.
- "Name_of_the_file [1111-2222]" 패턴을 사용하여 블록을 새 파일로 추출합니다. 여기서 "1111-2222"는 시작-끝 오프셋입니다.
- 이전에 식별된 손상된 영역 끝에서 비교를 재개하여 파일 끝까지 다른 항목을 검색합니다...
이제 이 힘들고 시간이 많이 걸리는 프로세스를 자동화할 수 있는 방법이 있을까요? 파일 비교에 더 적합한 다른 16진수 편집기가 있습니까? 아니면 이 모든 작업을 한 번에 수행하기 위해 스크립트를 사용할 수 있습니까? 나는 다음과 같은 훌륭하고 작은 명령줄 도구를 발견했습니다.DSFOK(아직 테스트하지 않은 다른 기능 중) 두 오프셋 값 사이의 데이터 블록을 추출할 수 있는 (DS File Ops Kit)입니다. 따라서 비교를 수행하고 해당 오프셋 값을 가져오려면 또 다른 명령줄 도구와 이러한 도구가 함께 작동하도록 하는 스크립트를 작성하는 데 필요한 팁이 필요합니다. 감사해요.