vi - 如何找到两个文本文件之间的差异并使用 vi 对其中一个文件进行更改?
问题描述
我的桌面上打开了两个终端窗口。我在两者上都有一个用 vi 打开的文本文件。有没有办法在文件 2 与文件 1 不同的地方更改文件 2 以使其与文件 1 相同?与我的问题最接近的问题是使用 vimdiff 合并更改
解决方案
如果您删除文本 2 然后说cp text1 text2
,您现在有 2 个相同的文件。我不认为那是你真正想要的,你想合并 2 个文件,对吗?然后使用 vimdiff 或其他差异工具并进行更改,直到差异达到您想要的方式。如果您diff text1 text2
在终端中输入,它将显示文件之间的所有差异。如果您删除所有这些差异,那么您有 2 个相同的文件,对吗?然后,如果您diff text1 text2
再次键入,则不会有任何区别。如果你想要 2 个相同的文件,那么你应该删除一个并复制另一个文件。
要合并,请下载合并工具或使用 vim 和 vimdiff,或者如果它是一小部分差异,您可以通过使用查找差异diff
并根据需要手动进行更改来找到它们,直到差异成为您想要的方式。
推荐阅读
- c# - 将多个 IEnumerable 转换为 Tuple 的 IEnumerable
- jquery - 如何将设置应用于所有相同的选择元素?
- python - 模型名称而不是 product_id 值
- html - React.js - 仅在页面处于活动状态(页面加载或重新加载)时触发“useEffect”
- api - 根据 Restful 实践,REST API 端点中的 URI
- mysql - 如何在单行中获得合并的输出表
- python - 在 Pandas Dataframe 中对重复方法使用“和”操作
- sql - INSERT INTO 语句中的 SQL 注入具有未知数量的值?
- typescript - HeadlessUI/vue:TypeError vue.defineComponent 不是函数
- swift - 如何使用标头Swift中的授权api键值获取请求