我可以在OS X上使用哪些目录比较工具?


45

我正在寻找一种能够比较目录而不只是文件的工具。能够从命令行调用该工具也很重要。

拥有免费工具会很棒,如果不是免费的,请指定价格。

Answers:


5

对于所有Google员工...请查看“ 超越比较”规则。专业版的费用为30美元或50美元。


当存在免费和开源替代方案时,我通常会尽量避免推荐商业解决方案,但BeyondCompare是一种特殊情况,它值得每一分钱……而且还是多平台的。我已经使用了10多年,并等待了很长时间才能获得MacOS版本。
索林

41

Xcode附带的FileMerge(免费)提供目录视图。
可以通过终端应用程序opendiff获得命令行版本。


2
我想选择这个答案,因为opendiff可以认为它与OS X几乎是“捆绑在一起”的,但是当我尝试比较两个文件夹时,它打开了一个很难理解的丑陋视图,而且我也看不到该怎么办。在文件视图中合并两个文件。我敢肯定有可能,但是如果这个基本功能不明显,我宁愿寻找更好的东西;)
sorin 2011年

23

适用于macOS和Linux的内置实用程序

如果您不介意使用终端,该diff命令可以比较目录。
大多数Linux发行版中都提供了该实用程序。

diff -rq directory1/ directory2/

-r 表示通过子目录递归,并且 -q给出简短的输出(即不显示实际的差异,仅注意哪些文件/目录不同)。

其他有用的选项是:
-s报告相同的文件,
-i忽略文件内容中的
--ignore-file-name-case大小写,比较文件名时忽略大小写。

如果要避免有关.DS_Store文件差异的警告(主要是有用性警告),请使用:

diff -rq directory1/ directory2/ | grep -v .DS_Store

17

Diffmerge应该满足您的所有要求。


我只是希望他们能够制作一个能够安装命令行启动程序并改善当前安装体验的安装程序。
sorin 2011年

2
这是一个老话题-但我通过安装了它,brew cask install diffmerge并且没有问题。
Rainer

2016年4月:仍然得到维护,仍然是我的首选开发工具之一。
JRobert

4

我最近购买了万花筒的副本(约40美元)。这是一个干净的应用程序。

vimdiff也可以通过命令行使用,并且可以在大多数UNIXy域中移植。


我已经使用万花筒几个月了。值得的价格。它偶尔会发售。
伊恩·C

万花筒不允许您编辑文件,没用!
mathieug

2

Bare Bones Software的Text Wrangler附带的diff工具具有目录比较功能,尽管它仅显示两个目录中的文件,并且仅显示每个目录中的文件。选择两者中的文件时,您可以通过单击按钮逐行合并更改来进行编辑。但是,它不允许您移动文件。您必须在外部执行此操作(例如,通过Finder)。
我发现它是更好的免费选项之一。


2

Unix和Linux StackExchange所述,另一个实现此目的的简洁工具是rsync 。要比较两个文件夹,您可以执行

rsync -avun $SOURCE $TARGET

而且,如果您真的担心文件的一致性/位腐烂,还有c选项可以比较文件校验和

rsync -avnc $SOURCE $TARGET

在所有Unix上都有用,因此很有参考价值。
丹,


1

最简单的解决方案:使用Dropbox或类似工具同步文件,然后在Windows上使用WinMerge。

Xcode附带的FileMerge实用程序不比较文件夹,也不进行合并/编辑。


1

您应该尝试使用功能强大的开源软件meld。Mac版本可以在Meld for OSX上找到。它支持目录和文件比较,并且在Mac下运行良好。

有人告诉我要改善这个答案,并解释为什么融合很好。一般来说,Meld是主要用于GNOME的全功能比较软件。它比这里列出的许多软件要好,因为

  1. 它是免费和开源的。因此,您无需担心费用或安全性
  2. 如果没有更强大的功能,它就像许多需要大量金钱的软件一样复杂
  3. 它是用户友好的,并且不涉及复杂的配置或在终端中键入命令。安装后,您应该可以立即使用它。

不好的部分可能是它是在GTK下开发的。因此有时感觉不像自然的MAC程序。此外,旧的MAC版本还存在一些问题。但是我当前正在使用的最新版本3.19.2效果很好,但我从未遇到过问题。


0

过去,我一直在比较大型文件夹结构(DVD),并且我已经开发了命令行实用程序来执行此操作。我最近使该实用程序(CrcCheckCopy)免费且可以跨平台使用(MacOS和Windows)。

CrcCheckCopy扫描源文件夹并创建一个包含所有文件的CRC标记的文件。然后,此文件用于比较目标文件夹。

您可以从这里获得它:https : //www.starmessagesoftware.com/crccheckcopy 您的反馈意见非常感谢。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.