Сравнение и объединение файлов diff, diff3, sdiff, cmp, patch : Интерактивное объединение c помощью 'sdiff'
Вперед Назад Содержание9. Интерактивное объединение c помощью 'sdiff'
С помощью 'sdiff', можно объединять два файла интерактивно, основываясь на сравнительном '-y' формате сравнения (см. "Сравнительный формат"). Используйте '-o FILE' или '--output=FILE', чтобы задать местрасположение результирующего объединенного текста. См. подробнее об опциях 'sdiff': "Запуск sdiff".
Другой способ объединения файлов интерактивно - использование пакета Emacs Lisp 'emerge'.
9.1 Задание опций 'diff' для 'sdiff'
Следующие опции 'sdiff' имеют тоже значение, что и в 'diff'. См. "Опции diff", для получения информации о них.
-a -b -d -i -t -v
-B -H -I REGEXP
--ignore-blank-lines --ignore-case
--ignore-matching-lines=REGEXP --ignore-space-change
--left-column --minimal --speed-large-files
--suppress-common-lines --expand-tabs
--text --version --width=COLUMNS
По историческим причинам, 'sdiff' имеет другие названия для
некоторых опций. Опция '-l' эквивалентна опции '--left-column', а
опция '-s' - опции '--suppress-common-lines'. Значение опций '-w' и
'-W' отличается от аналогичных в 'diff': в 'sdiff' '-w COLUMNS'
эквивалентна '-width=COLUMNS', а '-W' - '--ignore-all-space'. 'sdiff'
без опции '-o' эквивалентен 'diff' с опцией '-y' или 'side-by-side'
(см. Cравнительный формат::.).
9.2 Команды объединения
Группы общих строк, с пробелом в колонке управляющих символов, копируются из первого файла в результирующий. После каждой группы различающихся строк, 'sdiff' печатает '%' и ждет введения одной из следующих команд. Каждая команда завершается возвратом каретки.
- 'e'
Игнорирует обе версии. Запускает текстовой редактор с временным пустым файлом, затем копирует получившееся в результирующий файл.
- 'eb'
Объединяет обе версии, позволяет редактировать объединение во временном файле, затем копирует получившееся в результрующий файл.
- 'el'
Редактирует копию левой версии, затем копирует получившееся в результирующий файл.
- 'er'
Редактирует копию правой версии, затем копирует получившееся в результирующий файл.
- 'l'
Копирует левую версию в результирующий файл.
- 'q'
Выход.
- 'r'
Копирует правую версию в результирующий файл.
- 's'
Ничего не сообщая, копирует общие строки.
- 'v'
Копирует общие строки, комментируя выполняемые действия. Эта команда принимается по умолчанию.
Вперед Назад Содержание