Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сравнивает два файла или наборы файлов и отображает различия между ними.
Syntax
fc /a [/c] [/l] [/lb<n>] [/n] [/off[line]] [/t] [/u] [/w] [/<nnnn>] [<drive1>:][<path1>]<filename1> [<drive2>:][<path2>]<filename2>
fc /b [<drive1:>][<path1>]<filename1> [<drive2:>][<path2>]<filename2>
Parameters
| Parameter | Description |
|---|---|
| /a | Сокращает выходные данные сравнения ASCII. Вместо того, чтобы отображать все линии, которые отличаются, fc отображает только первую и последнюю строки для каждого набора различий. |
| /b | Сравнивает два файла в двоичном режиме, байт байтов и не пытается повторно выполнить повторную синхронизацию файлов после поиска несоответствия. Это режим по умолчанию для сравнения файлов со следующими расширениями файлов: .exe, .com, .sys, .obj, .lib или .bin. |
| /c | Игнорирует регистр буквы. |
| /l | Сравнивает файлы в режиме ASCII, строковой строке и пытается повторно изменить размер файлов после поиска несоответствия. Это режим по умолчанию для сравнения файлов, кроме файлов со следующими расширениями файлов: .exe, .com, .sys, .obj, lib или .bin. |
/lb<n> |
Устанавливает количество строк для внутреннего буфера строк равным N. Длина буфера строк по умолчанию равна 100 строкам. Если сравниваемые файлы содержат более 100 последовательных отличающихся строк, fc отменяет сравнение. |
| /n | Отображает номера строк во время сравнения ASCII. |
| /off[line] | Не пропускает файлы, имеющие автономный набор атрибутов. |
| /t | Запрещает fc преобразовывать табуляцию в пробелы. Поведение по умолчанию — рассматривать вкладки как пробелы с остановками на каждой восьмой позиции символа. |
| /u | Сравнивает файлы с текстовыми файлами Юникода. |
| /w | Сжимает пробелы (т. е. вкладки и пробелы) во время сравнения. Если строка содержит много последовательных пробелов или табуляций, /w обрабатывает эти символы как один пробел. При использовании с /wfc игнорирует пробелы в начале и конце строки. |
/<nnnn> |
Указывает количество последовательных строк, которые должны совпасть в случае несоответствия, прежде чем fc сочтет файлы повторно синхронизированными. Если количество совпадающих строк в файлах меньше nnnn, fc отображает совпадающие строки как разницы. Значение по умолчанию — 2. |
[<drive1>:][<path1>]<filename1> |
Указывает расположение и имя первого файла или набора файлов для сравнения. filename1 является обязательным. |
[<drive2>:][<path2>]<filename2> |
Указывает расположение и имя второго файла или набора файлов для сравнения. filename2 является обязательным. |
| /? | Отображает справку в командной строке. |
Exit codes
В следующей таблице перечислены все fc.exe код выхода и описание.
| Exit code | Description |
|---|---|
| 0 | Файлы идентичны. |
| 1 | Файлы отличаются. |
| 2 | Произошла ошибка во время сравнения. |
Remarks
Эта команда реализуется c:\WINDOWS\fc.exe. Эту команду можно использовать в PowerShell, но обязательно укажите полный исполняемый файл (fc.exe), так как "fc" также является псевдонимом для format-Custom.
Когда вы используете fc для сравнения ASCII, fc отображает различия между двумя файлами в следующем порядке:
Имя первого файла
Строки из filename1 , которые различаются между файлами
Первая строка для сопоставления в обоих файлах
Имя второго файла
Строки из filename2 , которые отличаются
Первая строка для сопоставления
/b отображает несоответствия, обнаруженные во время двоичного сравнения, в следующем синтаксисе:
\<XXXXXXXX: YY ZZ>Значение XXXXXXXX указывает относительный шестнадцатеричный адрес для пары байтов, измеренный от начала файла. Адреса начинаются с 000000000. Шестнадцатеричные значения для YY и ZZ представляют собой несовпадающие байты от filename1 и filename2 соответственно.
Вы можете использовать подстановочные знаки (* и ?) в filename1 и filename2. Если вы используете подстановочный знак в filename1, fc сравнивает все указанные файлы с файлом или набором файлов, указанным в filename2. Если вы используете подстановочный знак в filename2, fc использует соответствующее значение из filename1.
При сравнении файлов ASCII fc использует внутренний буфер (достаточно большой, чтобы вместить 100 строк) в качестве хранилища. Если размер файлов превышает размер буфера, fc сравнивает, что он может загрузить в буфер. Если fc не находит совпадение в загруженных частях файлов, он останавливается и выводит следующее сообщение:
Resynch failed. Files are too different.При сравнении двоичных файлов, размер которых превышает доступный объем памяти, fc полностью сравнивает оба файла, накладывая участки памяти на следующие участки с диска. Выходные данные совпадают с тем, что для файлов, которые полностью соответствуют памяти.
Examples
Чтобы провести ASCII-сравнение двух текстовых файлов, monthly.rpt и sales.rpt, и отобразить результаты в сокращенном формате, введите:
fc /a monthly.rpt sales.rpt
Чтобы выполнить двоичное сравнение двух батников, profits.bat и earnings.bat, введите:
fc /b profits.bat earnings.bat
Результаты, аналогичные следующему:
00000002: 72 43
00000004: 65 3A
0000000E: 56 92
000005E8: 00 6E
FC: earnings.bat longer than profits.bat
Если файлы profits.bat и earnings.bat идентичны, fc отображает следующее сообщение:
Comparing files profits.bat and earnings.bat
FC: no differences encountered
Чтобы сравнить каждый файл .bat в текущем каталоге с файлом new.bat, введите:
fc *.bat new.bat
Чтобы сравнить new.bat файла на диске C с файлом new.bat на диске D, введите:
fc c:new.bat d:*.bat
Чтобы сравнить каждый пакетный файл в корневом каталоге на диске C с тем же именем в корневом каталоге на диске D, введите:
fc c:*.bat d:*.bat
Related links
- ключа синтаксиса
Command-Line