• Сравнение 2 документов word онлайн. Утилиты для быстрого сравнения документов

    12.11.2020

    Бесплатные решения

    Синхронизация данных требует от программистов, системных администраторов и времени, и соответствующих навыков. Однако не менее важен правильно подобранный инструментарий. Контроль версий, работа с проектами, резервное копирование, слияние и визуальное сравнение файлов — далеко не полный список задач, так или иначе связанных с синхронизацией.

    В путеводитель вошли 10 программ, которые можно назвать во многом универсальными: они не привязаны к определенному сервису или приложению, позволяют выполнять вышеназванные (и менее специализированные) задачи не только через графический интерфейс, но и в режиме командной строки.

    Критерии сравнения выглядят следующим образом:

    SmartSynchronize

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

    Режимы сравнения представлены в приветственном окне программы. Помимо диалога выбора файлов, здесь возможен просмотр истории и выбор сохраненного профиля. Также в настройках (Preferences) настраиваются фильтры: файловые — для отсеивания файлов по названию и расширению, и фильтры директорий — позволяют составить список исключений.

    Для сравнения файлов используется двухпанельный режим side-by-side с синхронной прокруткой содержимого обеих панелей. Условных обозначений в SmartSynchronize немного, но, благодаря соединительным линиям (linking lines), операции сравнения и слияния очень интуитивны. SmartSynchronize указывает, куда и в каком направлении будет добавлен участок из одного файла в другой. Вставка текста производится одним кликом, позволяя обойтись без контекстного меню.

    Кодировку и синтаксис документа можно определить вручную, предусмотрена подсветка синтаксиса для многих языков программирования и разметки, нумерация строк и другие редакторские функции, присущие интегрированным средам разработки IDE.

    В целом, SmartSynchronize гибко настраивается, но все настройки распределены по разным разделам меню, что требует некоторого привыкания. Не хватает режимов отображения, настроек панели инструментов.

    В режиме сравнения директорий выводится список файлов и статус для каждого из них, в нижней части окна доступен предосмотр. Метод сравнения — по содержимому или только по размеру и времени — определяется в настройках Edit → Preferences. Количество информационных колонок (тип файла, дата) нельзя увеличить, хотя отключить имеющиеся можно.

    В SmartSynchronize реализовано как одностороннее объединение данных с левой или правой сторонами, так и обычная синхронизация. Конфигурацию можно сохранить для последующей загрузки, сделав снимок файловой структуры. Как поясняют разработчики, программа не распознает атрибуты файлов, поэтому использовать ее в качестве утилиты для резервирования нет смысла. Работа с архивами также не предусмотрена, равно как и с удаленными каталогами.

    Помимо вышеупомянутых, имеется дополнительный, трехсторонний метод слияния — 3-Way-Merge, который позволяет объединить различия между несколькими версиями файлов, причем каждый из трех документов можно редактировать независимо друг от друга.

    Функции сравнения, несомненно, востребованы программистами при контроле версий. Поэтому в заключение стоит сослаться на альтернативное решение этой же компании — . Программа представляет собой CVS-клиент с интегрированным инструментарием SmartSynchronize.

    Резюме . SmartSynchronize предлагает неплохой инструментарий для работы с файлами и директориями, местами не поддающийся настройке и не выходящий за рамки базовых возможностей.

    [+] Трехстороннее слияние
    [+] Удобный текстовый редактор
    [−] Отсутствие документации
    [−] Невозможность синхронизации удаленных каталогов и архивов

    WinMerge

    WinMerge — программа для сравнения и объединения файлов и каталогов в ОС Windows. Ее можно использовать как отдельный инструмент либо в связке с проектами. В WinMerge встроен текстовый редактор с поддержкой языков программирования, подсветкой и нумерацией строк.

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

    В режиме сравнения файлов в окне отображаются оба файла, в левой и правой части. Для удобной навигации по содержимому предусмотрена карта («Местоположения»). Строки, которые имеют различия, отмечены цветом, также с ними можно ознакомиться в панели «Отличия». Основные операции слияния доступны в разделе «Объединение».

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

    При сравнении каталогов результаты выводятся табулированным списком. В нем содержатся сведения о названии файла (каталога), его расположении, результат сравнения, дата, расширение и другая информация. Настроить отображение можно с помощью колонок. При необходимости можно активировать рекурсивный режим или переключиться в представление в виде дерева для удобной навигации.

    WinMerge позволяет выполнять одни и те же задачи разными способами — в том числе, с помощью перетаскивания или через контекстное меню Проводника. Можно создавать проекты для быстрого доступа к данным и настройкам. WinMerge работает в режиме командной строки, также программу можно использовать в связке с системами контроля версий (TortoiseSVN, Visual Studio, Rational ClearCase и т. п.).

    Резюме . WinMerge — программа, в первую очередь, с уклоном на работу с проектами. Интеграция с SVN, функциональный редактор, фильтры и расширения — все это отлично дополняет базовые возможности при сравнении данных.

    [+] Поддержка расширений
    [+] Функциональный редактор
    [+] Интеграция со сторонними приложениями
    [−] Нет трехстороннего сравнения

    Meld

    Meld — кроссплатформенная программа (OS X, Linux, Windows) для синхронизации файлов и директорий. С ее помощью осуществляется как двух-, так и трехстороннее сравнение. Прежде всего, инструментарий Meld будет полезен разработчикам, так как возможна интеграция с системами управления версиями: Git, Bazaar, Mercurial, Subversion и прочими.

    Несмотря на поддержку нескольких платформ, приложение далеко не стабильно функционирует в Windows. Скажем, вкладки и окна не всегда открываются и закрываются корректно. Возможно, проблемы связаны с библиотекой PyGTK, входящей в инсталлятор. Запустить программу получилось не сразу и только от имени администратора. Ошибки возникают постоянно, в подтверждение — .

    В процессе сравнения файлов можно задействовать текстовый фильтр или поиск (поддерживается синтаксис regex). Предусмотрены подсветка синтаксиса (используется библиотека ), нумерация строк, учет пробелов и другие опции, которые нужно активировать через настройки, так как по умолчанию они отключены. Вставки, изменения и конфликты в документе подсвечиваются, возможна быстрая навигация по списку изменений и экспорт в формате diff. Связь между файлами легко отследить с помощью соединительных линий и одним кликом произвести слияние нужных участков.

    Сканирование файлов директорий работает очень медленно. Это связано с тем, что сравнение осуществляется по содержимому, а не по размеру и временно́й отметке. Проблема решается установкой флажка напротив соответствующей опции в настройках. Набор доступных колонок весьма ограничен: размер, дата модификации и разрешения. Хотя и можно воспользоваться файловым фильтром, просмотр длинного списка файлов все равно превращается в рутинный процесс: нельзя мгновенно остановить сканирование, свернуть дерево файлов, быстро переместиться к нужным элементам.

    Разработчикам будет интересен третий режим работы приложения — Version Control View. Meld поддерживает интерфейс командной строки, поэтому предусмотрена интеграция со средами Git, Bazaar, Mercurial, Subversion и многим другими.

    Резюме . Программа Meld зарекомендовала себя с хорошей стороны в среде Linux, чего нельзя сказать о функционировании в Windows. Нестабильная работа и неудобный интерфейс, отсутствие сессий, недостаточная гибкость настройки... С другой стороны, инструментарий программы неплох, а качественная адаптация Meld для Windows, возможно, лишь вопрос времени.

    [+] Трехстороннее сравнение
    [+] Поддержка систем контроля версий
    [−] Медленная и нестабильная работа в Windows
    [−] Неудобный и неинформативный интерфейс

    Diffuse

    Diffuse —кроссплатформенный продукт для ОС Windows, OS X, Linux и BSD, по интерфейсу напоминающий Meld (в основе — библиотека PyGTK), но имеющий функциональные отличия. Заявлена интеграция с Bazaar, CVS, Darcs, Git, Mercurial, Monotone, RCS, Subversion и другими средами.

    Продолжая сравнение с Meld: Diffuse характеризуется стабильностью, здесь нет внезапных зависаний. Доступна подробная документация, интерфейс переведен на русский язык. Однако сравнение директорий не входит в инструментарий, в программу заложены только функции сравнения файлов и их редактирования. В Diffuse можно обнаружить несколько режимов слияния: — двух-, трех- и многостороннее. Таким образом, источников сравнения может быть сколько угодно, вопрос лишь в быстродействии и удобстве. Касательно второго аспекта можно лишь сказать, что сессий здесь нет — соответственно, работа с большими проектами в Diffuse под вопросом.

    Различия отмечаются цветом, сводка (Comparison Summary) доступна возле полосы прокрутки, для навигации по списку изменений предназначены кнопки на панели управления. Нумерация строк и подсветка синтаксиса с возможностью ручного переключения включены по умолчанию. В отличие от других подобных редакторов, в Diffuse нельзя сразу выделить произвольный участок текста, для этого необходимо дважды кликнуть по содержимому. В ином случае можно выделять текст и производить другие действия только построчно.

    Очевидно, что в Diffuse перелинковки различий между файлами нет, поэтому слияние строк осуществляется менее интуитивным методом. Все доступные команды собраны в разделе «Слияние», куда нужно обращаться каждый раз за неимением команд в контекстном меню. В SmartSynchronize или других упомянутых решениях многие операции производятся в один клик.

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

    Резюме . Функциональность такого рода востребована при слиянии нескольких текстовых документов. Программа лишена недостатков, присущих ближайшему аналогу Diffuse — Meld. Но, к сожалению, сравнение директорий и отчетность остались за бортом.

    [+] Удобная работа со строками
    [+] Интеграция с CVS
    [+] Многооконное слияние
    [−] Отсутствие сессий
    [−] Маркировка изменений не интуитивна

    Perforce P4 Merge

    P4Merge нечасто упоминается среди других бесплатных продуктов (например, по сравнению с WinMerge). К тому же отыскать эту программу среди других компонентов комплекса Perforce непросто. Perforce — это коммерческая кроссплатформенная система управления версиями, обладающая широкой сферой применения, не в последнюю очередь за счет плагинов и интеграции с различными продуктами (IntelliJ IDEA, Autodesk 3D Studio Max, Maya, Adobe Photoshop, Microsoft Office, Eclipse, emacs и др.). Впрочем, P4 Merge может работать автономно от сервера Perforce, достаточно скачать программу с сайта разработчика для ее бесплатного использования.

    Основные операции — это сравнение файлов (Diff) и слияние (Merge). Редактор документов предельно прост: есть нумерация, но нет подсветки синтаксиса. Редактировать файлы в двух панелях «на лету» нельзя, нужно выбрать одну из панелей, включить режим редактирования и затем сохранить изменения. Различия маркируются, для перехода между ними предназначены кнопки навигации. Ориентироваться по изменениям проще всего с помощью соединительных линий. В целом, интерфейс P4 Merge недостаточно удобен: в нем нет сводки по различиям, статистика по изменениям представлена суммарной цифрой, без детализации, для просмотра изменений нужно использовать ручное обновление.

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

    Резюме . Конечно, в P4 Merge множество функциональных ограничений, особенно если сравнивать с платными продуктами. Приложение можно рассматривать сугубо как дополнение к серверу Perforce. Возможно, в поисках нужного инструментария следует обратить внимание и на другие компоненты, доступные на сайте разработчика.

    [+] Диаграмма слияния в режиме Merge
    [−] Слабая функциональность
    [−] Невозможность редактирования на лету
    [−] Отсутствие команд слияния

    Онлайн сервис для сравнения двух текстов на процентное соотношение схожести по содержанию. Сравнение текстов основано на совпадение отдельных слов в текстах, без учета стоп-слов, игнорируются и перестановки слов местами. Такой способ проверки наиболее точен по сравнению с другими методами.

    Для сравнения заполните оба поля формы.

    Сравнение двух текстов

    Анализ сравнения текстов будет интересен оптимизаторам, копирайтерам и рерайтерам. Стоп и одинаковые слова, для удобства и лучшего восприятия, подсвечены с возможность изменить цвет. Возможно проанализировать текст длиной до 20000 знаков. Ведется статистика по общему количеству слов в обоих текстах и словарному запасу (без шумных слов). Если процентное отношение схожести около 50% , то скорей всего поисковые машины проигнорируют статью посчитав ее за дубликат. Надо стремиться как минимум к 20% схожести или 80% различия в сравнительных текстах.

    Для сравнения текстов не надо скачивать и устанавливать дополнительные программы. Наш ресурс доступен 24 часа 7 дней в неделю и бесплатен для использования.

    Инструкция по использованию сервиса:

    1. В первое поле введите эталонный текст.
    2. В второе поле введите измененный текс.
    3. Нажмите кнопку сравнить тексты .

    Через мгновение вы получите результат сравнения схожести текстов.

    Помимо веб-мастеров инструмент будет полезен и студентам.

    Во время работы с текстовыми документами часто приходится сравнивать их по содержанию. Эта необходимость возникает, если над документом работали несколько человек или документ был отправлен учителю на согласование и редактирование, нужно быстро найти все сделанные второй стороной изменения. Но и сам пользователь может создать несколько копий документа и запутаться: какая версия последняя, и какие исправления были внесены. Рассмотрим все возможности быстрого, а главное автоматического сравнения двух документов.

    1. Сравнение двух документов в MSWord (начиная с версий программы MSWord 2007, 2010, 2013)

    Воспользуемся функцией Юридическое примечание , позволяющей выполнять автоматическое сравнение документов.

    Запускаем программу MS Word. На ленте открываем вкладку Рецензирование , выбираем раздел Сравнить и раскрываем возможные варианты команды Сравнить… (смотри на Рисунок 1), выбираем первую команду – Сравнение двух версий документа (Юридическое примечание) .

    Рисунок 1 Запуск автоматического СРАВНЕНИЯ двух текстовых документов

    Откроется окно, в котором указываете путь к хранению исходного и измененного документов. Для указания пути необходимо воспользоваться пиктограммой с изображением желтой папки, как показано на Рисунке 2.

    Рисунок 2 Внешний вид окна Сравнение версий


    Командная кнопка Больше>> (Рисунок 2) предоставляет больше дополнительных настроек отображения (подсвечивания) выполненных изменений. При ее активации окно Сравнения версий примет следующий вид (смотри Рисунок 3)

    Рисунок 3 Дополнительные возможности при автоматическом сравнении текстовых документов


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

    По умолчанию окно Сравнения выглядит следующим образом.

    Рисунок 4. Окно автоматического сравнения двух версий документа


    Рассмотрим области окна автоматического сравнения документов в Юридическом примечании.

    • Слева приводится Сводка исправлений: что именно было исправлено и кем (если имя пользователя указано в настройках Word).
    • В центре – Сравниваемый документ – документ с внесенными исправлениями (показываются красным: добавление и удаление слов).
    • Справа сверху: исходный документ , а ниже – измененный документ.

    Область сверки Сводка исправлений можно настроить в виде горизонтальной панели рецензирования. Для этого необходимо выполнить последовательно следующие команды: вкладыш Рецензирование => Область проверки => Горизонтальная панель рецензирования.

    Рисунок 5. Настройка Горизонтальной панели рецензирования

    В этом случае окно автоматического сравнения двух документов будет выглядеть следующим образом

    Рисунок 6. Окно автоматического сравнения документов при горизонтальной панели рецензирования


    Перемещаться по исправлениям можно как с помощью левой клавиши мыши, кликая на текст в нужном месте документа, так и с помощью Вкладки Рецензирование – Область проверки.

    Рисунок 7 Работаем с опцией ИЗМЕНЕНИЯ


    Выявленные изменения необходимо либо Принять , чтобы оно осталось в измененном документе и больше не показывалось как исправление, либо Отклонить , если не согласны. Передвигаться по исправлениям можно с использованием клавиш: Назад и Далее (смотри Рисунок 7).

    Чтобы отклонить или принять все исправления, используем команду Принять (или Отклонить) . С помощью левой клавиши мыши раскрываем список опций команды Принять/Отклонить (стрелочка вниз) и из предложенных вариантов выбираем нужную, например: Применить (Отклонить) все исправления в документе.

    Рисунок 8 Окно команды ПРИНЯТЬ

    2. Сравнение двух блоков текста в интернет-браузере

    При сравнении содержимого двух документов также можно воспользоваться специализированными сервисами, предоставляемыми интернет-браузерами. Они удобны при определении различий в текстах как англоязычных документов, так и при работе с русскоязычными текстами, например: Text-Compare (http://text-compare.com/), TextDiff (http:// www.textdiff.com/) и Quick Diff (http://www.quickdiff.com/). С их помощью можно сравнивать фрагменты текста, таблицы и даже программный код.

    Рассмотрим кратко технологию сравнения документов в каждом из трех рекомендуемых сервисов. Общим для них является размещение двух фрагментов в соответствующие окна, а затем инициализация процесса сравнения.

    Text-Compare (http://text-compare.com/). Для сравнения двух фрагментов в данном сервисе достаточно скопировать эти фрагменты в соответствующие окна, а затем запустить процесс сравнения (командная кнопка Compare ). Различающиеся, а также отсутствующие в одном из сравниваемых документов фрагменты текста будут выделенными (отличающиеся элементы выделяются цветом при сравнении таблиц, в программных кодах при сравнении дополнительно отмечаются строки с отличиями).

    Рисунок 9 Окна Text-Compare до выполнения операции сравнения и после ее выполнения


    TextDiff (http://www.textdiff.com/). Окно сервиса представляет собой два окна, в которые помещаются сравниваемые фрагменты текста, таблицы или программного кода.

    Рисунок 10 Окно сервиса TextDiff


    Результаты отображения процесса сравнения с использованием TextDiff представляют один результирующий фрагмент, в котором зеленым цветом выделяется текст, появившийся во втором фрагменте (то есть отсутствующий в первом), а красным – удаленный текст.

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

    Рисунок 11 Результата сравнения с использованием сервиса TextDiff


    Принцип представления результатов в Quick Diff точно такой же, как и в TextDiff. Отличие состоит в том, что удаленные из второго фрагмента данные не только отображаются другим цветом, но еще и зачеркиваются. При этом к сложностям сравнения текста добавляется проблема – некорректное распознавание кириллицы (смотри Рисунок 12).

    Рисунок 12.Окно сервиса Quick Diff после выполнения операции сравнения


    Подведем итоги:

    1. сервис Text-Compare может использоваться для сравнения текстов, таблиц и программного кода безо всяких ограничений;
    2. сервис TextDiff может использоваться для сравнения текстов, программных кодов и небольших табличных фрагментов;
    3. сервис Quick Diff прекрасно сравнивает тексты (не на русском языке), программные коды и может использоваться для сравнения небольших табличных фрагментов.

    Материал подготовлен Шутилиной Л.А., методистом ГМЦ ДОгМ

    Бывает так, что у вас есть два почти одинаковых текста, и вам нужно четко видеть, чем именно они отличаются. Распространенный пример: вы «сняли» с диктофона интервью и отправили требовательному собеседнику на вычитку. А тот, вместо того чтобы цветом выделить свои правки, просто вырезал некоторые фразы, дописал новые, поменял местами абзацы.

    В результате вы читаете вроде бы свое же интервью, но не узнаете его «в гриме». Сличать вручную два больших текста сложно – можно ли облегчить эту задачу? сайт подскажет, как.

    Такие задачи достаточно часто встают перед программистами, поэтому программы для сравнения файлов умеют подсвечивать синтаксис при сравнении программных кодов различных языков программирования. Нам же нужно, чтобы такие программы позволяли сравнивать тексты в обычном формате.txt и желательно – в «вордовском».

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

    Microsoft Word

    В программе Microsoft Office начиная с версии 2007 сравнить два файла можно, не выходя из «ворда». Идем в пункт меню Рецензирование – Сравнить – Сравнить… (сравнение двух версий документа). Указываем два файла, жмем кнопку «Больше» и отмечаем параметры, по которым нужно сравнить текст, а также выбираем, где просматривать изменения: в первом файле, во втором или в новом.

    Удаленный текст программа выделяет красным зачеркнутым текстом, вставленный текст – красным подчеркнутым, перемещенные абзацы – зеленым. В отдельной панели слева (на скриншоте ниже ее нет) можно отследить изменения по каждому слову, а также увидеть резюме: в нашем случае 57 исправлений, из них 26 вставок, 29 удалений, 2 перемещения.

    WinMerge – это бесплатная кроссплатформенная утилита для сравнения файлов, ее можно использовать на богатом «зоопарке» операционных систем, начиная с Windows 98. Последняя версия – WinMerge 2.14.0 – существует как в виде инсталлятора (6,14 Мб), так и в виде портативной сборки . Программа «из коробки» может сравнивать только обычные текстовые файлы, а если мы хотим работать также с офисными документами (тексты в форматах.doc, .docx, .odt, таблицы в форматах.xls, .xlsx, .sxc, PDF-файлы и другие офисные файлы экзотических форматов), надо скачать плагин Xdocdiff . Подключается плагин следующим образом:

    1) Распаковываем архив с плагином

    2) Файлы xdoc2txt.exe и zlib.dll копируем в папку с установленной программой WinMerge

    3) Папку MergePlugins вместе с файлом amb_xdocdiffPlugin.dll копируем целиком в папку с установленной программой WinMerge

    4) Запускаем WinMerge, идем в меню Дополнения – Список, ставим галочку «Включить дополнения»

    5) Идем в меню Дополнения – ставим галочку «Распаковка автоматически»

    Все, теперь можно открывать два наших файла: хочешь - обычные «тээкстэшные», хочешь – «вордовские».

    Программа вас предупредит, что вы сможете также указывать заархивированные файлы, но для этого придется скачать плагин-архиватор. Впрочем, его отсутствие нам не страшно, отказываемся от будущих подобных уведомлений и получаем окно с нашими двумя текстами. В левой части окна – две длинные колонки: это миниатюры наших текстов. Желтым цветом выделены абзацы, в которых нашлись изменения. Поскольку в каждом из трех абзацев нашего исходного текста нашлись такие изменения, то обе колонки закрашены желтым. Конкретные измененные слова подсвечены светло-желтым.

    Но у программы есть множество настроек, так что несложно подсветить слова каким-нибудь другим цветом.

    Программ для сравнения файлов, в том числе текстовых, немало, их основной недостаток – цена. Compare it! стоит 29$ за лицензию, Beyond Compare – 30$, Compare Suite - 70$, DiffDoc Professional - аж 399,95$. Посмотрим на примере этой последней, самой дорогой программы, насколько она лучше бесплатной WinMerge.

    Скачиваем программу (7 мб), запускаем. Результат очень похож на тот, что нам выдал Microsoft Office 2007, только расположение колонок иное. Красный зачеркнутый – текст, который изменили, красный подчеркнутый – текст, на который был изменен исходный (красный зачеркнутый); синий зачеркнутый – вырезанный текст, зеленый – перемещенный (или добавленный «с нуля») текст.

    Получается, что разницы практически нет. Если уж пользователь честно купил дорогой офисный пакет Microsoft, то тратить еще 400 долларов на официальную покупку и регистрацию этой программы смысла нет никакого. Даже «триальной» версией нет нужды пользоваться, если тот же самый функционал обеспечивает стандартный «Ворд», тем более что незарегистрированная версия DiffDoc Professional каждые 15 минут напоминает о необходимости покупки.

    Наконец, проверим один из множества онлайн-сервисов для сличения текстов: DiffNow

    Сервис вроде бы поддерживает загрузку doc-файлов, «проглотил» их, написал Files compared successfully («сравнение файлов прошло успешно»), но вместо нормального результата выдал бинарный набор нолей и единиц, в котором, правда, подсветил отличия. Поэтому лучше копировать и вставлять текст вручную. Сайт подсвечивает изменения так: коричневый – измененный текст, синий – удаленный, бордовый – добавленный, фиолетовый – измененные слова в измененных предложениях. Сервис поддерживает различные настройки (в том числе можно заменять цвета), но от одного недостатка мы никакими настройками избавиться не смогли: текст по-программистски вытянут в длину, приходится задействовать горизонтальный скроллинг.

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

    В этой статье мы рассмотрим как выполняется сравнение файлов Linux. Разберем самые полезные способы, как для терминала, так и в графическом режиме. Сначала рассмотрим как выполнять сравнение файла linux с помощью утилиты diff.

    Утилита diff linux - это программа, которая работает в консольном режиме. Ее синтаксис очень прост. Вызовите утилиту, передайте нужные файлы, а также задайте опции, если это необходимо:

    $ diff опции файл1 файл2

    Можно передать больше двух файлов, если это нужно. Перед тем как перейти к примерам, давайте рассмотрим опции утилиты:

    • -q - выводить только отличия файлов;
    • -s - выводить только совпадающие части;
    • - выводить нужное количество строк после совпадений;
    • -u - выводить только нужное количество строк после отличий;
    • -y - выводить в две колонки;
    • -e - вывод в формате ed скрипта;
    • -n - вывод в формате RCS;
    • -a - сравнивать файлы как текстовые, даже если они не текстовые;
    • -t - заменить табуляции на пробелы в выводе;
    • -l - разделить на страницы и добавить поддержку листания;
    • -r - рекурсивное сравнение папок;
    • -i - игнорировать регистр;
    • -E - игнорировать изменения в табуляциях;
    • -Z - не учитывать пробелы в конце строки;
    • -b - не учитывать пробелы;
    • -B - не учитывать пустые строки.

    Это были основные опции утилиты, теперь давайте рассмотрим как сравнить файлы Linux. В выводе утилиты кроме, непосредственно, отображения изменений, выводит строку в которой указывается в какой строчке и что было сделано. Для этого используются такие символы:

    • a - добавлена;
    • d - удалена;
    • c - изменена.

    К тому же, линии, которые отличаются, будут обозначаться символом <, а те, которые совпадают - символом >.

    Вот содержимое наших тестовых файлов:

    Теперь давайте выполним сравнение файлов diff:

    diff file1 file2

    В результате мы получим строчку: 2,3c2,4. Она означает, что строки 2 и 3 были изменены. Вы можете использовать опции для игнорирования регистра:

    diff -i file1 file2

    Можно сделать вывод в две колонки:

    diff -y file1 file2

    А с помощью опции -u вы можете создать патч, который потом может быть наложен на такой же файл другим пользователем:

    diff -u file1 file2

    Чтобы обработать несколько файлов в папке удобно использовать опцию -r:

    diff -r ~/tmp1 ~/tmp2

    Для удобства, вы можете перенаправить вывод утилиты сразу в файл:

    diff -u file1 file2 > file.patch

    Как видите, все очень просто. Но не очень удобно. Более приятно использовать графические инструменты.

    Сравнение файлов Linux с помощью GUI

    Существует несколько отличных инструментов для сравнения файлов в linux в графическом интерфейсе. Вы без труда разберетесь как их использовать. Давайте рассмотрим несколько из них:

    1. Kompare

    Kompare - это графическая утилита для работы с diff, которая позволяет находить отличия в файлах, а также объединять их. Написана на Qt и рассчитана в первую очередь на KDE. Вот ее основные особенности:

    • Поддержка нескольких форматов diff;
    • Поддержка сравнение файла linux и каталогов;
    • Поддержка просмотра файлов diff;
    • Настраиваемый интерфейс;
    • Создание и применение патчей к файлам.

    2. DiffMerge

    DiffMerge - это кроссплатформенная программ для сравнения и объединения файлов. Позволяет сравнивать два или три файла. Поддерживается редактирование строк на лету.

    Особенности:

    • Поддержка сравнения каталогов;
    • Интеграция с просмотрщиком файлов;
    • Настраиваемая.

    3. Meld

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

    • Сравнение двух и трех файлов;
    • Использование пользовательских типов и слов;
    • Режим автоматического слияния и действия с боками текста;
    • Поддержка Git, Mercurial, Subversion, Bazar и многое другое.

    4. Diffuse

    Diffuse - еще один популярный и достаточно простой инструмент для сравнения и слияния файлов. Он написан на Python. Поддерживается две основные возможности - сравнение файлов и управление версиями. Вы можете редактировать файлы прямо во время просмотра. Основные функции:

    • Подсветка синтаксиса;
    • Сочетания клавиш для удобной навигации;
    • Поддержка неограниченного числа отмен;
    • Поддержка Unicode;
    • Поддержка Git, CVS, Darcs, Mercurial, RCS, Subversion, SVK и Monotone.

    5. XXdiff

    XXdiff - это свободный и очень мощный инструмент для сравнения и слияния файлов. Но у программы есть несколько минусов. Это отсутствие поддержки Unicode и редактирования файлов.

    Особенности:

    • Поверхностное или рекурсивное сравнение одного или двух файлов и каталогов;
    • Подсветка отличий;
    • Интерактивное объединение;
    • Поддержка внешних инструментов сравнения, такие как GNU Diff, SIG Diff, Cleareddiff и многое другое;
    • Расширяемость с помощью сценариев;
    • Настраиваемость.

    6. KDiff3

    KDiff3 - еще один отличный, свободный инструмент для сравнения файлов в окружении рабочего стола KDE. Он входит в набор программ KDevelop и работает на всех платформах, включая Windows и MacOS. Можно выполнить сравнение двух файлов linux для двух или трех, или даже сравнить каталоги. Вот основные особенности:

    • Отображение различий построчно и посимвольно;
    • Поддержка автослияния;
    • Обработка конфликтов при слиянии;
    • Поддержка Unicode;
    • Отображение отличий;
    • Поддержка ручного выравнивания.

    Выводы

    В этой статье мы рассмотрели как выполняется сравнение файлов linux с помощью терминала, как создавать патчи, а также сделали небольшой обзор лучших графических утилит для сравнения файлов. А какие инструменты для сравнения используете вы? Напишите в комментариях!

    Похожие статьи