gpt4 book ai didi

cygwin - 使用 diff 执行两个几乎相似文件的行号之间的映射

转载 作者:行者123 更新时间:2023-12-02 05:06:07 25 4
gpt4 key购买 nike

我有一个文本文件及其更新版本。我需要使用 diff 命令来发现两个文本文件之间的行号差异。有什么方法可以直接获取行号之间的映射。
目前我使用这个代码
差异 -ab 文件 1 文件 2
这输出了我

15a16
>
27c28,30
< parameter [3:0] state12=4'b 1011;
---
> parameter [3:0] state12=4'b 1011;
> parameter [3:0] state13=4'b 1100;
> parameter [3:0] state14=4'b 1101;
55c58,59
< next_state = state02;

however i would like something on these lines
1,1
2,3
3,4
4,6

其中第一个数字是 file1 中的行号,第二个数字是 file2 中的相应行号。否则我将不得不在 python 中编写一个脚本来解码 a,c.d 的使用
提前谢谢你

最佳答案

为此,您需要一个能够识别代码何时移动的差异工具,而不仅仅是被插入/删除。

我们的Smart Differencer系列工具可以做到这一点。 SmartDifferencers 使用真正的解析器解析代码文本,然后匹配短语被移动/复制/修改的位置。输出标识每个以某种方式更改的原始代码块,精确到行号和列号,代码是否已被删除、移动、复制等。许多标准编程语言都有 SmartDifferencers(您似乎使用 Verilog,并且是的,有一个)。

您仍然需要一个脚本来将 SmartDifferencer 输出转换为您正在寻找的形式。

关于cygwin - 使用 diff 执行两个几乎相似文件的行号之间的映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11465382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com