是否有 diff(1) 可以计算每条匹配行上数字的增量?

是否有 diff(1) 可以计算每条匹配行上数字的增量?

是否有任何形式的diff检测匹配行,即包含相同文本的行,除了数字值(十进制,八进制,十六进制),然后计算这些数字的增量,输出每个匹配的行与增量?

它需要确定数字字段的位置,因为它们在某些文件中可能并不总是位于同一位置(例如 的输出netstat -s)。

理想情况下,输出格式应该是可定制的(例如,在开始时打印增量以便于对结果进行排序等)。

我确信我可以写一些东西,但如果轮子已经存在,为什么还要重新发明呢?

答案1

我遇到过的唯一diff工具逐行考虑差异(通常带有“删除这一行,插入这些行” 类型的方法)。这与补充patch.

最接近的可能是交互式的vimdiff,但即使这样也不能真正解决问题。

如果您想找到除数值之外的匹配行,我会通过替换所有数值(根据某些定义的模板)来实现此目的,例如XXNUMBERXX在两个文件中进行比较,然后使用标准diff工具

相关内容