diff: memory exhausted
尝试对两个27 GB的文件进行差异比较时出现错误,这些文件在具有CentOS 5和4 GB RAM的Linux机器上非常相似。看来这是一个已知的问题。
我希望可以为这种必要的实用程序提供替代方法,但我找不到。我想该解决方案将不得不使用临时文件而不是内存来存储所需的信息。
- 我尝试使用
rdiff
和xdelta
,但是它们更适合显示两个文件之间的更改(例如补丁程序),而对于检查两个文件之间的差异不是那么有用。 - 尝试使用VBinDiff,但它是一种可视化工具,可以更好地比较二进制文件。我需要一些可以像常规一样将差异传递到STDOUT的东西
diff
。 - 还有许多其他实用程序,例如
vimdiff
仅适用于较小的文件。 - 我还阅读了有关Solaris的信息,
bdiff
但找不到Linux的端口。
除了将文件分成较小的部分,还有其他想法吗?我有40个这样的文件,所以尽量避免将它们分解的工作。
您尝试过什么版本的xdelta?xdelta3还是xdelta1?
—
nmuntz 2010年
它是版本1.1.4。xdelta3是否提供不同的功能?我刚刚检查了在线文档,但它似乎仍在提供“增量”。
—
汤姆B 2010年
另请参见以下答案:unix.stackexchange.com/a/77259/27186
—
锤破了2014年