是否有可能只复制两个文件的差异?就像在 winmerge 中一样,但是,我找不到这个选项
就像在这个屏幕上一样——我只想复制“黄色部分”。当然我可以手动完成,但在大文件中它不太好笑:-)
是否有可能只复制两个文件的差异?就像在 winmerge 中一样,但是,我找不到这个选项
就像在这个屏幕上一样——我只想复制“黄色部分”。当然我可以手动完成,但在大文件中它不太好笑:-)
WinMerge有一种内置且简单的方法来生成此类“仅差异”文件,它们称为“补丁”。
单击“工具”,然后单击“生成补丁...”,然后输入要存储结果的位置:
您将获得(对于您的示例)该文件
4,8c4,8
< HELLO WORLD
< HELLO WORLD
< HELLO WORLD
< HELLO WORLD
< HELLO WORLD
---
>
>
>
>
>
它使用标准、紧凑的方式来表示差异并且易于操作。
有一个名为DiffMerge的免费应用程序。
注意:选项“仅显示差异”将被禁用,直到您切换到标记为引用视图(已加载文件)的底部选项卡。之后,您应该能够使用仅差异视图。
以下是您在 WinMerge 中的操作方式:
在 winmerge 中有一个非常好的功能 - 工具中您可以通过 Tools-> Raport 在 html 中生成 raport。在该操作之后,您可以解析生成的 html- 并以这种方式仅获得差异(但也许这不是最简单的解决方案)
大多数差异工具都有一个补丁生成功能,可以在剪贴板中工作,这主要是您想要的,因为您只会在左侧和右侧获得更改的文本(如果您删除上下文行)。如果您只想要一侧的那些,您可以轻松地过滤关于第一个字符的补丁(删除所有行,使用编辑器,匹配诸如^[+>].*$
保留删除的行或^[-<].*$
保留添加的行)。
grep
命令行中的 diff 工具将仅输出该内容,并使用上述正则表达式之一进行管道传输,您就完成了。
WinMerge 提供“向左复制到...”或“向右复制到...”,它们只会将差异复制到选择的文件夹中。