有时我需要进行二进制文件的比较,但是否有任何开源工具可以做到这一点呢?
UltraCompare 可以实现,但它是商业产品。
有时我需要进行二进制文件的比较,但是否有任何开源工具可以做到这一点呢?
UltraCompare 可以实现,但它是商业产品。
GNU diffutils提供了一个名为cmp
的程序,可以告诉你两个二进制文件第一次不同的偏移量。然而,它没有更多的功能。
或者,您可以将每个文件进行十六进制转储,并将其导入到您喜欢的文本差异工具中:
diff <(hexdump -v -e '1/1 "%02x\n"' binfile1) <(hexdump -v '1/1 "%02x\n"' binfile2)
hexdump
表单会导致每行显示一个字节;如果您想在同一行上显示相同的字节作为字节值和字符,则应为每个 hexdump
包括一个额外的 -e
语句 - 因此... - sdaaudiff <(hexdump -v -e '1/1 "%_p "' -e '1/1 "%02x\n"' binfile1) <(hexdump -v -e '1/1 "%_p "' -e '1/1 "%02x\n"' binfile2)
。 - sdaauSubversion必须了解的内容。它支持二进制对象的增量变更记录。
最坏的情况下,你可以查看他们的源代码库...