什么是diff命令的Windows等价物?
我知道有一个类似这样的post: 这里 。
我尝试使用comp
命令,就像它提到的,但如果我有两个文件,一个数据像“abcd”,另一个数据“abcde”,它只是说,文件是不同的大小。 我想知道他们在哪里不同。 在Unix中,如果我有类似“abd”和“abc”的东西,简单的diff会告诉我哪一行和哪一列,windows中的comp命令可以工作。 否则。 任何想法,我可以用这个?
FC file1 file2
也可以用于二进制文件:
FC /B file1 file2
好吧,在Windows上,我很乐意运行diff
和许多其他的GNU工具。 你可以用cygwin来做,但是我个人更喜欢GnuWin32,因为它是一个更轻的安装体验。
所以,我的答案是,Windows的diff
相当于diff
,而不是diff
本身!
Winmerge有一个命令行工具 ,可能值得一试。
另外,您也可以根据需要使用graphics部分。
另一种方法是从http://git-scm.com/downloads下载并安装git。; 然后,将path添加到您的PATHvariablesGit \ bin \。 这会给你不仅差异,而且还可以从Windows命令行使用许多其他的Linux命令。
FC。 fc比Cygwin的diff更好地处理大文件(> 4 GB)。
在我的情况下,FC效果很好,因为我只想改变线条。 FC还提供文件名,相同的行和双边比较等附加数据。
>fc data.txt data.txt.bak ***** DATA.TXT ####09 ####09 ####09 ***** DATA.TXT.BAK ####09 ####08 ####09
但在我的情况下,我只想要的行已经改变,并希望这些行被导出到不同的文件,没有任何其他头或数据。
所以我用“findstr”来比较文件:
findstr /V /G:data.txt.bak data.txt >DiffResult.txt
其中:
data.txt.bak
是旧文件的名称
data.txt
是新文件的名称
DiffResult.txt
包含更改的数据,即只有一行#### 09
还有Powershell(它是Windows的一部分)。 这不是快捷但灵活,这是基本的命令。 如果你需要更好的格式,人们已经写了各种不同的cmdlet和脚本。
PS C:\Users\Troll> Compare-Object (gc $file1) (gc $file2)
不是Windows的一部分,但是如果您是Visual Studio的开发人员,那么您需要使用WinDiff(graphics)
但是我个人最喜欢的是BeyondCompare,价格是30美元。
DiffUtils可能是你最好的select。 这是Windows的等效差异。
据我所知,没有内置的等价物。
COMP得到错误的原因是该实用程序假定您正在比较的文件具有相同的大小。 为了克服这个问题,你可以使用'/n'
选项,你可以指定你要比较的行数。 (通过在命令行中键入'comp /?'
来'comp /?'
支持的选项,所以你的命令如下所示:
C:\>comp "filepath1" "filepath2" /a /l /n=(the number of lines you want to compare) /c
这应该解决你的问题,如果你想坚持使用COMP。 但这对于真正的大文件来说是个问题。
虽然FC
是一个选项,但我觉得这是原始的, FC
是一个更好的select。 如果您频繁需要FORFILES
和FC
,可能会使用一个非常好的filecompare实用程序。
FC以这种方式用于ref:
C:\>fc /c(case insensistive) /lbn(number of errors allowed before you wanna stop compare) /n(display line number) "filename1" "filename2"
有很多选项可以通过'fc /?'
看到 希望这可以帮助
我发现了一个轻量级的Windowsgraphics软件,这在缺乏diff
命令的情况下似乎很有用。 它可以解决我所有的问题。
相当于diff命令的窗口是fc(File Comapre)命令。
以下是这样做的基本步骤:
1.将两个文件保存在一个文件夹中(例如file1.html和file2.html)
2.启动命令提示符
3.键入fc file1Location file2Location
find了相同的详细教程:
http://www.howtogeek.com/206123/how-to-use-fc-file-compare-from-the-windows-command-prompt/
我不知道下面的工具是否是你需要的。 但我喜欢使用特定的文件,一些在线工具。 这样我就可以使用它,不pipe操作系统如何。 这里是一个例子:diffchecker.com
但是为了满足我的需求,我猜想跟踪项目文件的更改和日志的最佳工具是GIT。 如果你在一个团队中工作,你可以在你的服务器上有一些在线回购,或者与Bitbucket或者Github一起使用。
希望它有助于某人。