Материал просмотрен 711 раз(а)

Порой жизненно необходимо бывает произвести сравнение двух текстовых файлов, например исходников или дампов, чтобы выявить разницу между ними.

Ситуаций на самом деле масса, точно так же сравнивать можно выжимку различных команд. Логи. Да тот же состав файловой системы, например, используя выходные файлы команд find и md5sum:

# find /bin/ -executable -exec /usr/bin/md5sum {} \;

А ещё лучше отсортировать результаты:

# find /bin/ -executable -exec /usr/bin/md5sum {} \; | sort +1 -2 > list.txt

executable checksumm

executable checksumm

Здесь мы выполняем просчёт хеша для всех исполняемых файлов в каталоге /bin/. Этот вывод можно сохранить в файл и хранить как эталон. Затем периодически делать подобный дамп и сравнивать версии между собой. Точно так же – дампы каталогов веб-сервера, например.

Итак, как же мы будем сравнивать?

Из утилит под Windows мне особенно интересна была WinMerge.

Открываем в ней оба файла и видим следующее:

WinMerge

WinMerge

Программа проста и понятна, позволяет сравнивать даже каталоги. Делать патчи, т.е. инструкции как из первого файла получить второй.

А вот так можно сравнить два разных дампа mysql, чтобы понять, как происходит то или иное действие в CMS (куда записываются данные и т.д.)

Дамп базы данных

Дамп базы данных

Если нет желания заморачиваться с утилитами типа WinMerge, есть и другой вариант, который мне, кстати, нравится даже больше. Многие используют текстовый редактор Notepad++ в качестве основного. Так вот у него есть плагин сравнения текстовых файлов.

Открываем наш редактор, выбираем в меню “Плагины – Plugin Manager – Show Plugin Manager”.

Установка плагинов

Установка плагинов

Далее, выбираем нужный плагин Compare и жмём “Install”

Установка плагина

Установка плагина Compare

Теперь открываем два наших файла и выбираем в плагинах Compare

Плагины - Сравнение

Плагины – Сравнение

Открывается окно, аналогичное WinMerge.

Сравнение

Сравнение

Каждый выбирает свой способ, но мне больше нравится пользоваться плагином Notepad++. Может кому и пригодится!