最近经常的要比较不同版本的源文件,由于文件比较多,比较想通过两个目录的比较直接得到,版本之间的不同之处,开始使用Beyond Compare,感觉很好用,但是不太习惯红色的配色,又比较懒惰的不想更改配色,所以选择了使用diff配合vim的方法来查看文件的不同。
经过查看diff的帮助说明,得到下面的命令。
假如我要比较目录A和目录B,使用下面的命令
- diff -c -a -b -x *.bak -x *.log A B > AB.diff
- gvim AB.diff
这样就可以方便的查看不同了,目前我的vim的diff配色比较舒适。
解释一下参数的意义
-c 采用content的format输出different
-a 强制使用text的模式
-b 忽略空白的不同
-x 过滤掉所比较目录中一些不想比较的文件类型,可以使用其他的pattern
实际上如果需要过滤的文件类型比较多的时候,使用-x这个选项就有点麻烦了,查看了文档之后,diff提供了更加方便的参数过滤文件。
-X excludefile 忽略在excludefile中的文件类型,注意每种文件占一行
这个参数实际上在使用dos的命令行xcopy的时候也是有用过的。
- xcopy /E /C /Y /Exclude:file srcdir destdir