파일의 일부 비교

파일의 일부 비교

파일이 5개 있어요

file1 - 32 bytes
file2 - 32 bytes
file3 - 32 bytes
file4 - 32 bytes

file5 - 128 bytes

데이터가 일치하는지 비교하고 싶어요

file1 - first 32 bytes of file5
file2 - 2nd 32 bytes of file 5 i.e from 32- 64 bytes
file3-  3rd 32 bytes of file 5 i.e from 64-96 bytes 
file4-  4th 32 bytes of file5 i.e from 96 -128 bytes

다음을 사용하여 처음 32바이트를 비교할 수 있습니다.

cmp -n 32 file1.txt file5.txt

하지만 다른 3가지 데이터 비교를 고수하시겠습니까? 누구든지 나를 도와줄 수 있나요?

답변1

  • 그리고dd

블록을 건너뛰어 부품을 추출합니다.

 dd bs=32 count=1 skip=1 if=file5 | diff - file2

다른 파일과 일치하도록 건너뛴 블록 수를 적절히 늘리십시오.

  • 그리고split

파일이 작아서 공간을 많이 차지하지 않습니다. 큰 부분을 여러 부분으로 나누고 비교하십시오.

split -b 32 file5
diff xab file2
  • 한꺼번에

어쩌면 모두 일치할까요? 물론, 둘 중 하나만 일치하지 않으면 이는 손실됩니다.

 cat file{1..4}  | diff  - file5

물론 cmp"diff"를 바꾸는 것도 가능합니다.

관련 정보