我有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”也可以。