首页 > 代码库 > 文件夹和文件对比工具
文件夹和文件对比工具
1.Beyond compare
适用系统:Win8.1/Win8/Win7/Vista/Win2003/WinXP
链接:http://baoku.360.cn/soft/show/appid/102794
优点:继承了原 2.0 的文本比较的强大功能(支持标注行号以任意颜色标注差异同步差异)更加强化了在文件夹对比时的多文件操作。不再以原来的多窗口方式。而是采用了流行的标签卡方式。另多个文件的比较得心应手!此外 3.0 还将增加以往只使用插件才能实现的功能: 强大的 hex 比较~快速的装载并分析两个二进制文件的差别。是程序破解的重要辅助工具。全新的图片比较~通过像素化的比较找出两幅图片的不同!(大家来找茬自动版;))。比较 Mp3 的标签信息鉴别 Mp3 的不同。全新的向导式界面方便您迅速进入工作状态。
用途:Beyond Compare被应用于版本控制及资料同步的工作上
a.电脑上两个目录的内容,
b.电脑上的目录和FTP地址的内容
c.两个文本档案的内容(包括 UTF-8、html、Delphi源程序等文本档案)。
颜色功能区分:
a.黑色表示左右两侧的文件(夹)是一样的,所以备份时我们可以忽略它们,这在很大程度上避免了的重复、盲目备份,提高备份效率;
b.蓝色表示右(左)侧是完全没有的,这时我们右击这个文件(夹),选择“复制到右(左)侧”即可;
c.红色表示两边都有这个文件(夹),但不完全相同,这时你就要权衡一下修改日期了。一般用最新修改的文件覆盖旧文件(方法同上,复制到右/左侧),但在某些情况下我们可能要保留旧文件——比如电脑中毒了,你用杀毒软件清除病毒后,这个文件的修改日期肯定会变,这个被杀毒软件啃过的“最新的”文件很可能已经无法使用或有其它问题
d.黄色的文件(夹)一般不必理会。常见的系统卷标信息文件夹(System Volume Information)就是黄色的,如果你关了WinXP的系统还原功能,这个文件夹就是空的。如果你硬要动它,Beyond Compare会提示“无法载入 N:\System Volume Information:拒绝访问。”
2.ultracompare
适用系统:WinXP, Win7, WinAll
链接:http://www.pc6.com/softview/SoftView_43402.html
优点:可进行文本模式,文件夹模式以及二进制模式的比较,并且可以对比较的文件进行合并,同步等操作,支持撤消操作。拥有书签与收藏夹功能,可以设置过滤,的确是一款比较出色的文件比较程序。
你可以用它来比较两个文本文件的不同,也可以比较以二进制的模式比较两个EXE 文件的不同,还可以用它来比较两个文件夹及其子文件夹内文件的不同。
最为文件管理系统的补充,UltraCompare Professional 可以追踪不同文件、目录和 .zip/.jar 档案之间的差异。文件比较功能包括同时对两个或三个文件进行文本及二进制比较,并能合并这些文件之间的差异。文件夹比较支持对本地/网络目录(并递归比较子目录)和 zip 档案进行比较,同时与文本/二进制模式类似,可以合并这些目录之间的差异。
3.meld diff
链接:http://meldmerge.org/
# Ubuntu 用户安装:
sudo apt-get install meld
# 整合到 Gedit :
sudo apt-get install zenity
然后打开 Gedit ,打开菜单 Edit - Preferences - Plugins ,开启 External Tools 插件,点击下面的 Configure Plugin ,按左下角的 + 号添加一个新的工具,输入以下代码,并设置一个快捷键。保存好后你就可以通过该快捷键来直接打开 Meld 并载入原始文档与当前编辑的文档进行比较了。
#!/bin/sh
meld $GEDIT_CURRENT_DOCUMENT_DIR/$GEDIT_CURRENT_DOCUMENT_NAME `zenity \
--file-selection --title="File for comparsion" --filename=/home/` &
使用Meld代替你的版本控制系统中默认的diff工具
Meld 是一个可视化的文本差异比较工具,它可以跟多个版本控制系统集成,个人认为它是最好用的。
如何让Meld成为你SVN或GIT的默认diff工具呢? 下面我简单的说一下
安装Meld
在Ubuntu下,只需一条简单的命令就可以了
sudo apt-getinstall meld让SVN使用Meld作为diff工具
编辑 ~/.subversion目录下的config文件,将meld赋值给diff-cmd,如下所示:
### Set diff-cmd to the absolute path of your ‘diff‘ program.### This will override the compile-time default, which is to use### Subversion‘s internal diff implementation.diff-cmd =meld
此后,使用svn diff命令时,将调用meld工具进行比较。
让GIT使用Meld作为diff工具
首先,设定GIT让它使用Meld
git config --global diff.external meld
然后像往常一样比较某个文件
git diff filename
这时,虽然Meld会被调用,但是系统会报错”Wrong number of arguments(Got 7)”。原因是GIT会送7个参数给Meld,但是Meld只需要两个参数,两个需要比较的文件名。所以不能直接用Meld,必需要做一点小修改:
在自己的目录下建立一个git-meld.sh的script
vim ~/git-meld.sh
加入以下内容:
#!/bin/shmeld $2 $5
更改文件的权限:
chmod 777~/git-meld.sh
然后把external diff改成这个shell script:
git config --globaldiff.external ~/git-meld.sh