Стандартный (старый) формат вывода будет отображать разницу между файлами без окружающего текста с областями, где файлы различаются.
Отображение различий без контекста
«Нормальный» diff
формат вывода показывает каждый кусок различий без какого-либо окружающего контекста. Иногда такой вывод является наиболее ясным способом увидеть, как изменились строки, без беспорядка соседних неизмененных строк (хотя вы можете получить аналогичные результаты с контекстом или унифицированными форматами, используя 0 строк контекста). Однако этот формат больше не используется для рассылки исправлений; для этой цели формат контекста и унифицированный формат являются превосходящими. Обычный формат используется по умолчанию для совместимости со старыми версиями diff
и стандартом POSIX. Используйте --normal
опцию, чтобы явно выбрать этот формат вывода.
Подробное описание нормального формата
Обычный формат вывода состоит из одного или нескольких блоков различий; каждый блок показывает одну область, где файлы отличаются. Обычные фрагменты формата выглядят так:
CHANGE-COMMAND
< FROM-FILE-LINE
< FROM-FILE-LINE...
---
> TO-FILE-LINE
> TO-FILE-LINE...
Существует три типа команд изменения. Каждый из них состоит из номера строки или разделенного запятыми диапазона строк в первом файле, одного символа, указывающего тип вносимого изменения, и номера строки или разделенного запятыми диапазона строк во втором файле. Все номера строк являются исходными номерами строк в каждом файле. Типы команд изменения:
LaR
Добавьте строки в диапазоне R второго файла после строки L первого файла. Например, 8a12,15
означает добавить строки 12-15 файла 2 после строки 8 файла 1; или, если файл 2 изменяется в файл 1, удалить строки 12-15 файла 2.
FcT
Замените строки в диапазоне F первого файла на строки в диапазоне T второго файла. Это как комбинированное добавление и удаление, но более компактное. Например, 5,7c8,10
означает изменить строки 5-7 файла 1, чтобы они читались как строки 8-10 файла 2; или, если файл 2 изменяется на файл 1, измените строки 8-10 файла 2 на строки 5-7 файла 1.
RdL
Удалить строки в диапазоне R из первого файла; строка L - это место, где они появились бы во втором файле, если бы они не были удалены. Например, 5,7d3
означает удалить строки 5-7 файла 1; или, если файл 2 изменяется в файл 1, добавить строки 5-7 файла 1 после строки 3 файла 2.
Таким образом, чтобы увидеть апельсины, вы должны разложить их рядом или использовать единый контекст.
oranges
это самая большая общая часть между двумя файлами, то, что вы получите, является кратчайшим способом выразить разницу между этими двумя файлами.