如何计算linux中两个二进制文件(即两个可执行文件)之间的差异

前端之家收集整理的这篇文章主要介绍了如何计算linux中两个二进制文件(即两个可执行文件)之间的差异前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Linux中有没有办法计算两个二进制文件(即两个可执行文件)之间的差异?

让我更具体一点:我想知道如何计算Linux中两个版本的可执行文件或应用程序或软件之间的增量(delta差异).例如,如果我必须仅下载并安装现有应用程序或二进制文件的更新部分(最新版本和旧版本之间的差异),我该如何在Linux中执行此操作.

最佳答案
您可以使用工具bsdiff和它的配套bspatch来执行二进制文件的高效差异和修补程序.

如果您想获得更小的补丁,可以查看Google Chrome中的Courgette.它建立在bsdiff之上,但它们通过在进行差异之前实际拆解它们来提供更高效的可执行文件差异.它不是作为一个单独的项目发布的,但你可以从Chromium source repository(如何到check out the code)获得它.

还有xdelta工具,比bsdiff更长.根据bsdiff的作者,效率相当低;补丁更大.它的优点是它支持标准VCDIFF格式(RFC 3284),它也受到其他几个工具的支持,所以如果你需要使用其他工具,它会更有用.

猜你在找的Linux相关文章