Vimdiff - 如何提取文件中相似的行并将它们输出到一个文件中

3

我对vimdiff比较新,有一个问题是如何将两个或多个文件的相似之处输出到一个新文件中。例如,基于以下图片,我想要b、c、e、f、a以及被比较的两个文件名称一起输出到不同的文件中。

这种情况下的示例文件模板可能是:

[文件1的名称][文件2的名称]

两个文件之间相似的行

你真的需要看一下这张图片

是否有内置的vim命令可以做到这一点,或者我可以编写一些bash脚本,从vim中提取所需数据?谢谢!

1个回答

2
如果您已经安装了正则差分工具,可以使用它来获取输出:
diff  --unchanged-line-format='%L' --old-line-format='' \
  --new-line-format='' a.txt b.txt

您可以在Linux命令行中运行该命令。或者在Vim中,您需要先输入:!来运行它,如下所示:
:!diff  --unchanged-line-format='%L' --old-line-format='' \
  --new-line-format='' a.txt b.txt

抱歉,我对这一切都很陌生,请问您如何在vim中运行该命令? - Javed Ahamed
我已经澄清了我的意思。Vim似乎在后台使用diff,因此它应该可以在所有平台上使用。我假设是Linux,因为我对Windows没有太多的经验,所以我不知道这在那里如何工作。 - richq
谢谢!现在我得想办法将这个功能添加到超过2个文件中 ^_^。 - Javed Ahamed

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接