如何比较Windows m / c的cmd提示符下的两个目录? 我想要等同于UNIX的diff -r。
答案 0 :(得分:19)
安装Cygwin,您可以在Windows上使用diff -r
。
答案 1 :(得分:14)
Windows的comp命令是您正在寻找的。 p>
这里的例子是:
要将目录C:\ Reports的内容与备份目录\\ Sales \ Backup \ April进行比较,请键入:
comp c:\reports \\sales\backup\april
答案 2 :(得分:8)
最简单的方法可能是为Windows下载差异:http://gnuwin32.sourceforge.net/packages/diffutils.htm
你也可以这样做:
dir directory1 > dir1
dir directory2 > dir2
comp dir1 dir2
此外,某些版本的Windows附带windiff
,但这是一个GUI工具
答案 3 :(得分:4)
在Windows中有fc
命令。我认为diff
更好,但是如果你只想使用安装附带的东西,那么,你走吧! :)
答案 4 :(得分:3)
您可以安装Gow,并且可以在Windows命令提示符下运行diff。
答案 5 :(得分:2)
您可以从NT版本开始使用Windows中包含的windiff util。只需运行'windiff',就会弹出一个图形工具。
档案 - >比较目录
http://msdn.microsoft.com/en-us/library/aa266122(VS.60).aspx
本文介绍如何从命令行使用它。这个工具的好处是它已经包含在内,你不需要下载和安装任何东西。
答案 6 :(得分:0)
要将数据与命令提示符进行比较,您可以使用
COMP / a / l D:\ Folder1 \ data.txt D:\ Folder2 \ data.txt
可以有不同的选项,例如要搜索的特定行数和不区分大小写的搜索,甚至可以将文件夹与命令提示符进行比较。以下是compare files and folders with command prompt的其他选项。
答案 7 :(得分:0)
部分解决方案(因此对我来说不幸的是“非解决方案”,虽然我最初对它抱有很高的期望),这对你来说可能是也可能不够:
似乎ROBOCOPY tool can be (ab-)used to work as a kinda poor man's recursive comparison;由于不幸的限制,它显然 不比较文件内容 。它似乎比较尺寸,日期和可选的属性。对此的神奇咒语是:
ROBOCOPY path1 path2 /e /l /ns /njs /njh /ndl /fp /log:result.txt /it
/e
- 递归,包括空目录; /l
- 仅打印日志,不要修改文件; /ns /njs /njh
- 不打印文件大小,作业摘要,作业标题; /ndl
- “不记录文件夹名称”
/log:result.txt
- 将结果写入'result.txt'文件;我认为这可以省略,然后结果将显示在标准输出上。其他选项:
/it
- 如果您想要比较属性,我认为应该添加此内容 - 请参阅an explanation on what "tweaked" files are。正如我上面所说,遗憾的是,这似乎并不是比较文件内容。我首先运行以下命令验证了这一点:
mkdir d1\a\b d2\a\b & echo x > d1\a\b\f & echo y > d2\a\b\f
大多数情况下,这应该生成具有相同时间戳的文件d1 \ a \ b \ f和d2 \ a \ b \ f,您可以使用dir d1\a\b\f d2\a\b\f
进行验证。 {1}呼叫d1& d2为我生成了一个空结果集。
答案 8 :(得分:0)
在Windows 10中,您可以通过启用Linux Bash Shell在diff
中运行bash
命令