![](/img/trans.png)
[英]Pattern to get objects structured difference and statistics or how to create diff tool
[英]Copy only difference (kdiff, winmerge, any diff like tool)
是否有可能只復制兩個文件的差異? 就像在winmerge,但是,我找不到這個選項
就像在這個屏幕上 - 我只想復制'黃色部分'。 當然我可以手動完成,但在大文件中它不是太有趣:-)
WinMerge有一種內置且簡單的方法來生成這樣的“diff only”文件,他們稱之為“補丁”。
單擊“工具”,然后單擊“生成修補程序...”,並輸入要存儲結果的位置:
您將獲得(對於您的示例)文件
4,8c4,8
< HELLO WORLD
< HELLO WORLD
< HELLO WORLD
< HELLO WORLD
< HELLO WORLD
---
>
>
>
>
>
它使用標准,緊湊的方式表示差異 ,易於操作。
以下是WinMerge中的操作方法:
在winmerge中,有一個非常好的功能 - 您可以通過Tools-> Raport在html中生成raport。 在那個操作之后你可以解析生成的html-並以這種方式獲得只有差異(但也許這不是最簡單的解決方案)
大多數diff工具都有一個補丁生成功能,它可以用於剪貼板,這主要是你想要的,因為你只會在左側和右側獲得改變的文本(如果刪除上下文行)。 如果你只想要一方的那些,你可以輕松過濾關於第一個字符的補丁(刪除所有行,使用編輯器,匹配^[+>].*$
以保留刪除的行或^[-<].*$
以保持添加的行)。
命令行中的diff工具將輸出,使用grep
和上述正則表達式之一管道輸出。
WinMerge提供“Copy Left to ...”或“Copy right to ...”,它只會將差異復制到所選的文件夾中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.