파일이 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"를 바꾸는 것도 가능합니다.