Синтаксис:
diff [OPTION]... FILES
Описание:
Утилита diff сравнивает два указанных в параметрах файла построчно и выводит отличия между ними в окно стандартного вывода.
Параметры:
-i | --ignore-case | Не учитывать при сравнении регистр символов. |
--ignore-file-name-case | Не учитывать регистр при сравнении имен файлов. | |
--no-ignore-file-name-case | Учитывать регистр при сравнении имен файлов. | |
-E | --ignore-tab-expansion | Игнорировать расхождения в символах табуляции. |
-b | --ignore-space-change | Не учитывать расхождения в количестве пробелов. |
-w | --ignore-all-space | Игнорировать все пробелы. |
-B | --ignore-blank-lines | Пропускать пустые строки. |
-I RE | --ignore-matching-lines=RE | Ignore changes whose lines all match RE. |
--strip-trailing-cr | Удалять "перевод каретки" при вводе. | |
-a | --text | Все файлы рассматриваются как текстовые. |
-c -C NUM |
--context[=NUM] | В случае обнаружения расхождений выводить NUM (по умолчанию 3) соседних строк с различными из каждого файла. |
-u -U NUM |
--unified[=NUM] | В случае обнаружения расхождений выводить отличающиеся строки и NUM (по умолчанию 3) совпадающих. |
--label LABEL | Use LABEL instead of file name. | |
-p | --show-c-function | При сравнении файлов на языке "C" выводить отличающиеся функции. |
-F RE | --show-function-line=RE | Show the most recent line matching RE. |
-q | --brief | Краткий отчет. Выводит только сообщение, что файлы имеют отличия. |
-e | --ed | Выводить как ed скрипт. |
--normal | Стандартный вывод расхождений между файлами. | |
-n | --rcs | Выводить результаты в формате RCF. |
-y | --side-by-side | Выводить результат в две колонки. Отличающиеся строки помечаются вертикальной чертой "|". |
-W NUM | --width=NUM | Ограничить вывод результатов NUM - колонок (по умолчанию 130). |
--left-column | При двухколоночном выводе, совпадающие строки будут показаны только в левой колонке. | |
--suppress-common-lines | Не выводить одинаковые строки. | |
-D NAME | --ifdef=NAME |
В случае нахождения отличающихся строк создает следующую конструкцию в результирующем файле: #ifdef NAME |
--GTYPE-group-format=GFMT | Формат вводных групп GTYPE в виде GFMT | |
--line-format=LFMT | Аналогично, но формат всех вводных строк LFMT | |
--LTYPE-line-format=LFMT |
Аналогично, но формат вводных строк LFMT %< строки из FILE1 LETTER может быть (заглавными новая группа, строчными старая группа): F номер первой строки LFMT может содержать: %L Содержимое строки И GFMT и LFMT могут содержать: %% % |
|
-l | --paginate | Выводить результат постранично (для печати). |
|
||
-t | --expand-tabs |
При выводе результатов преобразовать символы табуляции в пробелы. |
-T | --initial-tab | Выровнять выводимые строки, поставив в начало строки символ табуляции. |
-r | --recursive | Рекурсивное сравнение всех найденных папок. |
-N | --new-file | Если файл для сравнения не существует, то создать его. |
--unidirectional-new-file | Если первый файл для сравнения не существует, то создать его. | |
-s | --report-identical-files | Сообщить если два файла полностью совпадают. |
-x PAT | --exclude=PAT | Исключить из сравнения файлы соответствующие PAT. |
-X FILE | --exclude-from=FILE | Исключить из сравнения файлы, которые соответствуют шаблону FILE. |
-S FILE | --starting-file=FILE | Когда сравниваются папки, начинать сравнение с файла FILE. |
--from-file=FILE1 | Сравнивать FILE1 со всеми остальными. FILE1 может быть папкой. | |
--to-file=FILE2 | Сравнивать все файлы с FILE2. FILE2 может быть папкой. | |
--horizon-lines=NUM | Пропустить NUM строк. | |
-d | --minimal | Искать минимальные отличия. |
--speed-large-files | Обработка больших файлов с большим количеством маленьких отличий. | |
--version | Вывести информацию о версии утилиты diff для Mac OS X. | |
--help | Вывести подсказку по параметрам утилиты. |
Примеры:
Сравнить два файла
diff file1 file2
Сравнить два каталога с подкаталогами и вывести список отличающихся файлов в mac os x
diff -rq folder1 folder2
Близкие команды:
printf Отформатировать и напечатать значения