두 바이너리 간의 차이점을 확인할 수 있는 깔끔한 방법이 있습니까? 대부분 동일하지만 일부 바이트가 변경되었으며 파일 중 하나의 특정 위치에 시퀀스가 삽입되었습니다.
xxd
바이트를 삽입하지 않고 바이트만 변경하면 비교 결과가 작동합니다.
답변1
파일 간의 차이점을 표시할 수 있는 일부 바이너리 편집기가 있지만 제가 시도한 것( dhex
및 vbindiff
)은 삽입 또는 삭제를 감지하고 표시할 수 없는 것 같습니다.
두 파일 간의 차이를 계산할 수 있는 , rdiff
또는 xdelta
와 같은 이진 diff 유틸리티가 많이 있습니다 . bsdiff
그러나 목적은 patch
나중에 원본 파일에 적용되는 파일을 생성하는 것입니다. 당신은 이것을 읽을 수 없습니다패치 파일도착하다바라보다차이점이 뭐야.
차이점을 시각적으로 확인하기 위해 할 수 있는 한 가지는 파일의 16진수 덤프(한 줄에 1바이트)와 diff
결과를 가져오는 것입니다. 줄 번호는 파일의 오프셋을 알려줍니다(단, 0이 아닌 1에서 시작한다는 점에 유의하세요).
diff -u <(od -w1 -vAn -tx1 file1) <(od -w1 -vAn -tx1 file2)
( od
비표준 -w
옵션을 지원한다고 가정).