Я знаю, что есть сообщение, подобное этому: здесь. 
Я попытался использовать команду comp, как он упоминал, но если у меня есть два файла, один с данными типа "abcd", а другой с данными "abcde", он просто говорит, что файлы имеют разные размеры. Я хотел знать, где именно они отличаются. В Unix простой diff сообщает мне, какая строка и столбец, команда comp в окнах работает, если у меня есть что-то вроде "abd" и "abc". Не иначе. Любые идеи, что я могу использовать для этого?
Что такое эквивалент Windows для команды diff?
Ответ 1
Запустите это в оболочке CMD или пакетном файле:
FC file1 file2
 FC также может использоваться для сравнения двоичных файлов:
FC /B file1 file2
Ответ 2
Ну, в Windows я с радостью запускаю diff и многие другие инструменты GNU. Вы можете сделать это с помощью cygwin, но я лично предпочитаю GnuWin32, поскольку это гораздо более легкий опыт установки.
Итак, я отвечаю, что эквивалент Windows diff - это не что иное, как diff!
Ответ 3
У Winmerge есть утилита командной строки которая может быть проверена.
Кроме того, вы также можете использовать графическую часть его в зависимости от того, что вам нужно.
Ответ 4
Другой вариант - загрузить и установить git из http://git-scm.com/downloads. Затем добавьте путь к Git\bin\к вашей переменной PATH. Это даст вам не только diff, но и многие другие команды linux, которые вы можете использовать в командной строке Windows.
Ответ 5
к. fc лучше обрабатывает большие файлы ( > 4 ГБ), чем Cygwin diff.
Ответ 6
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
Ответ 7
Там также Powershell (который является частью Windows). Это не быстро, но гибко, вот основная команда. Люди написали для этого различные командлеты и сценарии, если вам нужно лучшее форматирование.
PS C:\Users\Troll> Compare-Object (gc $file1) (gc $file2)
Не является частью Windows, но если вы являетесь разработчиком Visual Studio, он поставляется с WinDiff (графическим)
Но моим личным фаворитом является BeyondCompare, стоимость которого составляет 30 долларов.
Ответ 8
DiffUtils, вероятно, лучший выбор. Это эквивалент Windows.
Насколько я знаю, нет встроенных эквивалентов.
Ответ 9
Причина, по которой вы получаете ошибку с COMP, заключается в том, что утилита предполагает, что файлы, которые вы сравниваете, имеют одинаковый размер. Чтобы преодолеть это, вы можете использовать опцию '/n', с помощью которой вы можете указать количество строк, которые вы хотите сравнить. (см. параметры, поддерживаемые comp, набрав 'comp /?' в командной строке.
поэтому ваша команда будет выглядеть так:
C:\>comp "filepath1" "filepath2" /a /l /n=(the number of lines you want to compare) /c 
Это должно решить вашу проблему, если вы хотите использовать COMP. Но это будет проблемой для действительно больших файлов.
Хотя comp является опцией, но я считаю, что он примитивен, а FC - лучший вариант. вы можете использовать FORFILES и FC вместе, чтобы, возможно, сделать действительно хорошую утилиту filecompare, если вам требуется ее на регулярной основе.
FC используется таким образом для ссылки:
C:\>fc /c(case insensistive) /lbn(number of errors allowed before you wanna stop compare) /n(display line number) "filename1" "filename2"
есть много доступных опций, которые вы можете увидеть на 'fc /?'
надеюсь, что это поможет
Ответ 10
Я нашел легкое графическое программное обеспечение для окон, которое кажется полезным при отсутствии команды diff. Это может решить все мои проблемы.
Ответ 11
Окнами, эквивалентными команде diff, является команда fc (File Comapre).
Вот основные шаги для этого: 
1. Храните два файла в папке (пример file1.html и file2.html) 
2. Запустить командную строку 
3. Введите fc file1Location file2Location 
Вы нашли подробное руководство по этому же:
http://www.howtogeek.com/206123/how-to-use-fc-file-compare-from-the-windows-command-prompt/
Ответ 12
Я не знаю, действительно ли следующий инструмент - то, что вам нужно. Но мне нравится использовать для определенных файлов некоторые онлайн-инструменты. Таким образом, я могу использовать его независимо от операционной системы. Вот пример: diffchecker.com
Но для моих нужд я считаю, что лучший инструмент для отслеживания изменений и журналов моих файлов проекта - GIT. Если вы работаете в команде, у вас может быть репо онлайн на вашем сервере или использовать его с Bitbucket или Github.
Надеюсь, это поможет кому-то.
Ответ 13
Если вы установили git на свой компьютер, вы можете открыть терминал git и просто использовать команду Linux diff как обычно.
