资讯专栏INFORMATION COLUMN

利用 vimdiff 递归对比文件夹差异

Rocko / 1296人阅读

摘要:最近遇到需要对比两个文件夹下文件内容差异的操作,下没有找到合适的工具,所以写了个脚本来解决这个问题。脚本说明源码地址依赖功能递归对比两个文件夹下的文件差异操作环境操作要求基本操作安装

最近遇到需要对比两个文件夹下文件内容差异的操作, linux-cli 下没有找到合适的工具,所以写了个脚本来解决这个问题。功能类似于 Beyond Compare

功能说明

利用 shell 脚本实现 递归对比文件夹差异

此处脚本硬链为 diffdir 命令

操作示例

dir1 dir2 两个文件夹,内容结构如下

➜  test-fir-diff-dir git:(master) ✗ tree
.
├── dir1
│   └── test.sh
└── dir2
    └── test.sh

2 directories, 2 files
➜  test-fir-diff-dir git:(master) ✗ cat dir1/test.sh
#!/bin/bash

echo "test one"
echo "I have exit func"
exit
➜  test-fir-diff-dir git:(master) ✗ cat dir2/test.sh
#!/bin/bash

echo "test one"

利用 diffdir 命令进行文件夹对比

➜  test-fir-diff-dir git:(master) ✗ diffdir ./dir1 ./dir2

结果如下图:

如果文件夹下有多文件差异,只需在 vim 的命令模式下,键入 qa 即可进入下一对文件对比结果界面。

脚本说明

源码地址:Github-diffdir

依赖:vimdiff diff

功能:递归对比两个文件夹下的文件差异

操作环境:*nix cli

操作要求:vimdiff 基本操作

安装

git clone https://github.com/fevin/diffdir.git diffdir && cd diffdir
ln diffdir.sh /usr/local/bin/diffdir

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/24974.html

相关文章

  • 一年内经验前端面试题记录

    摘要:对于,其默认大小一般是本地存储和都保存在浏览器端,且都是同源的。把变量放在闭包中和放在全局作用域,对内存的影响是一致的,这里并不能说成是内存泄露。将新的树和之前的虚拟树进行相比较,根据结果对进行精准响应。 1. JavaScript 1. JavaScript文件在什么情况下会放在html哪个位置 https://zhuanlan.zhihu.com/p/... 对于必须要在DOM加载...

    qianfeng 评论0 收藏0
  • 一年内经验前端面试题记录

    摘要:对于,其默认大小一般是本地存储和都保存在浏览器端,且都是同源的。把变量放在闭包中和放在全局作用域,对内存的影响是一致的,这里并不能说成是内存泄露。将新的树和之前的虚拟树进行相比较,根据结果对进行精准响应。 1. JavaScript 1. JavaScript文件在什么情况下会放在html哪个位置 https://zhuanlan.zhihu.com/p/... 对于必须要在DOM加载...

    kelvinlee 评论0 收藏0

发表评论

0条评论

Rocko

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<