Сравнение и объединение файлов 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'

Копирует общие строки, комментируя выполняемые действия. Эта команда принимается по умолчанию.

Запускаемый текстовой редактор задается переменной окружения 'EDITOR', если она установлена. Заданный по умолчанию редактор зависит от системы.


Вперед Назад Содержание