Якщо треба порівняти два файли, знавці командного рядка використовують diff.
Якщо ж потрібно швидко і якісно об’єднати декілька файлів — краще використовувати програми, що візуалізують різницю між файлами з можливістю редагувати їх.
Для графічних оболонок таких програм є багато, а що робити якщо ви в текстовій консолі на віддаленому сервері?
В такому випадку, найчастіше Ви зустрінетесь з розширенням тектового редактора Vim — Vimdiff.
На вигляд воно страшне, але доволі дієве.
Потрібно хоч приблизно уявляти як працює Vim. наприклад більшість команд це справді команди, які треба вводити руками.
Натисніть "Esc" щоб припинити редагувати текст і потрапити в командний рядок редактора.
Для прикладу, напишіть в ком. рядку "wq" (write quit) щоб зберегти та вийти з документу, або "q!" щоб вийти без збереження. Отак все і робиться.
Щоб порівняти два файли використовуйте команду
vimdiff file1 file2 [file3]
Відкриється текстовий редактор Vim (vimdiff), поділений на декілька частин, в кожній з яких буде показано відповідний файл.
Vimdiff відразу спробує зрозуміти чим саме відрізняються файли і зобразити це за допомогою кольорового виділення тексту.
Наприклад сині рядки це ті місця в поточному файлі де бракує якоїсь інформації, а червоні, це ті, які в поточному файлі є, а в порівняльному — зникли і т.п.
Тепер Вам треба вирішити як два файли злити докупи. Для цього, перебуваючи у рядку в якому виявлено різну інформацію, використовуйте такі команди:
ctrl+w ctrl+w - переключитись між файлами
]c - наступний рядок, в якому є відмінний код
[c - попередній рядок, в якому є відмінний код
do - (diff obtain), отримати текст з іншого вікна, якого не вистачає в поточному
dp - (diff put), записати текст з поточного вікна в інше
Для детальнішої інформації куріть _man vim :) . _
