Scroll to navigation

DIFF(1) Команды пользователя DIFF(1)

ИМЯ

diff — сравнить файлы построчно

СИНТАКСИС

diff [ПАРАМЕТР]... ФАЙЛЫ

ОПИСАНИЕ

Сравнить файлы построчно.

Аргументы, обязательные для длинных параметров, обязательны и для коротких.

вывести результат работы diff в обычном формате (по умолчанию)
выводить только информацию о том, что файлы различаются
выводить информацию об одинаковых файлах
выводить ЧИСЛО строк (по умолчанию 3) скопированного контекста
выводить ЧИСЛО строк (по умолчанию 3) объединённого контекста
вывести сценарий для ed
вывести результат работы diff в формате RCS
осуществлять вывод в две колонки
ограничить ширину выводимой информации заданным ЧИСЛОМ столбцов (по умолчанию 130)
выводить только левую колонку для одинаковых строк
не выводить одинаковые строки
отображать, в какой функции языка C обнаружено каждое из изменений
-F, --show-function-line=РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ
отображать последнюю строку, соответствующую РЕГУЛЯРНОМУ_ВЫРАЖЕНИЮ
использовать МЕТКУ вместо имени файла и временной метки (параметр может быть указан более одного раза)
преобразовывать символы табуляции в пробелы при выводе
выравнивать табуляцию, выводя символ табуляции в начале строки
задать шаг табуляции равным ЧИСЛУ столбцов выводимой информации (по умолчанию 8)
не выводить пробелы или символы табуляции перед пустыми строками
пропустить выводимую информацию через «pr» для разбиения на страницы
выполнять рекурсивное сравнение над всеми найденными подкаталогами
не разыменовывать символьные ссылки
-N, --new-file
воспринимать отсутствующие файлы как пустые
воспринимать отсутствующие первые файлы как пустые
игнорировать регистр при сравнении имён файлов
учитывать регистр при сравнении имён файлов
пропускать файлы, имена которых совпадают с ШАБЛОНом
пропускать файлы, имена которых совпадают с шаблонами в указанном ФАЙЛе
начать с ФАЙЛа при сравнении каталогов
сравнить ФАЙЛ1 со всеми операндами; ФАЙЛ1 может быть каталогом
сравнить все операнды с ФАЙЛОМ2; ФАЙЛ2 может быть каталогом
игнорировать различия в регистре при сравнении содержимого файлов
-E, --ignore-tab-expansion
игнорировать изменения, связанные с преобразованием знаков табуляции в пробелы
игнорировать пробельные символы в конце строк
игнорировать изменения в количестве пробельных символов
игнорировать все пробельные символы
игнорировать изменения, если они были вызваны пустыми строками
игнорировать изменения, все строки в которых соответствуют РЕГУЛЯРНОМУ_ВЫРАЖЕНИЮ
обрабатывать все файлы как текстовые
удалять из входных данных завершающие символы возврата каретки
вывести объединённый файл, используя «#ifdef ИМЯ» для оформления различий
--ГТИП-group-format=ГФОРМАТ
форматировать группы входных строк типа ГТИП, используя ГФОРМАТ
форматировать все входные строки, используя СФОРМАТ
--СТИП-line-format=СФОРМАТ
форматировать входные строки типа СТИП, используя СФОРМАТ
Данные параметры форматирования обеспечивают детальный контроль над данными, выводимыми
diff, выступая в качестве обобщённого варианта параметра -D/--ifdef.
СТИП может принимать значения «old» (старые), «new» (новые) или «unchanged» (неизменённые).
ГТИП может принимать те же значения, что и СТИП, а также «changed» (изменённые).
(Только) ГФОРМАТ может содержать:
%<
строки из ФАЙЛА1
%>
строки из ФАЙЛА2
%=
строки, совпадающие в ФАЙЛЕ1 и ФАЙЛЕ2
%[-][ШИРИНА][.[ТОЧН]]{doxX}БУКВА
printf-подобный формат числа, задаваемого БУКВОЙ
БУКВЫ употребляются в следующем виде для новых групп и в нижнем регистре для старых:
номер первой строки
номер последней строки
количество строк = L-F+1
F-1
L+1
%(A=B?T:E)
если A равно B, то T, иначе E
(Только) СФОРМАТ может содержать:
%L
содержимое строки
%l
содержимое строки за исключением завершающего её перевода на новую строку
%[-][ШИРИНА][.[ТОЧН]]{doxX}n
printf-подобный формат номера строки во входных данных
И ГФОРМАТ, и СФОРМАТ могут содержать:
%%
%
%c'С'
одиночный символ С
%c'\ВВВ'
символ с восьмеричным кодом ВВВ
С
символ С (остальные символы воспринимаются буквально)
пытаться обнаружить меньший набор изменений
оставлять ЧИСЛО строк в совпадающих префиксе и суффиксе
при сравнении ожидать большие файлы и множество разрозненных небольших изменений
выделять выходные данные цветом; КОГДА может принимать значения «never» (никогда), «always» (всегда) или «auto» (автоматически); простое указание --color подразумевает --color='auto'
задать цвета, используемые при активном параметре --color; ПАЛИТРА представляет собой список возможностей terminfo, разделённых двоеточием
отобразить эту справочную информацию и завершить работу
вывести информацию о версии и завершить работу

Аргумент ФАЙЛЫ принимает вид «ФАЙЛ1 ФАЙЛ2», «КАТАЛОГ1 КАТАЛОГ2», «КАТАЛОГ ФАЙЛ» или «ФАЙЛ КАТАЛОГ». Если указан параметр --from-file или --to-file, то ограничений на ФАЙЛы не накладывается. Если ФАЙЛ задан как «-», читать из стандартного потока ввода. Код завершения равен 0, если входные данные совпадают, 1, если они различаются, и 2, если произошла ошибка.

АВТОРЫ

Программа написана Полом Эггертом (Paul Eggert), Майком Хэртелом (Mike Haertel), Дэвидом Хейзом (David Hayes), Ричардом Столлманом (Richard Stallman) и Леном Тауэром (Len Tower).

ИНФОРМАЦИЯ ОБ ОШИБКАХ

Сообщайте об ошибках по адресу bug-diffutils@gnu.org
Домашняя страница GNU diffutils: <https://www.gnu.org/software/diffutils/>
Общая помощь по использованию программного обеспечения GNU: <https://www.gnu.org/software/gethelp.ru.html>

АВТОРСКИЕ ПРАВА

Copyright © 2021 Free Software Foundation, Inc. Лицензия GPLv3+: GNU GPL версии 3 или выше <https://gnu.org/licenses/gpl.ru.html>.
Это свободное программное обеспечение: вы можете изменять и распространять его. Не предоставляется НИКАКИХ ГАРАНТИЙ в той мере, в которой это разрешено законом.

СМОТРИТЕ ТАКЖЕ

wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1)

Полная документация для diff ведётся в форме руководства Texinfo. Если программы info и diff корректно установлены в вашей системе, команда

info diff

должна предоставить вам доступ к полному руководству.

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Андрей Догадкин <adogadkin@outlook.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.

август 2021 г. diffutils 3.8