nixp.ru v3.0

8 ноября 2024,
пятница,
04:42:09 MSK

9 декабря 2011, 14:17

Разработаны версии diff и grep, учитывающие структуры данных

6
Dartmouth Hall в Университете Дартмута
Dartmouth Hall в Университете Дартмута
Иллюстрация с сайта En.Wikipedia.Org

Специалисты из Университета Дартмута (Dartmouth College) представили на проходящей в эти дни в Бостоне (Канада) конференции USENIX LISA (Large Installation System Administration) 2011 усовершенствованные варианты классических UNIX-утилит grep и diff, предназначенные для обработки более сложных данных.

Аспирант Гэбриэл Вивер (Gabriel Weaver) и профессор Шон Смит (Sean Smith) рассказали про BGrep («ориентированный на блоки grep») и BDiff («ориентированный на блоки diff»), которые позволяют обрабатывать данные не построчно, как это делают традиционные инструменты, а блоками. Эти блоки определяются структурами данных, хранимыми в специальной библиотеке шаблонов.

Авторы новых инструментов говорят, что их разработки призваны заметно расширить возможности обработки различных «сложных» данных (не обычных логов, где каждая запись хранится в виде строки определенного формата) — например, от операционной системы Cisco IOS: «Для таких данных утилиты вроде diff оказываются слишком низкоуровневыми. Инструмент diff не учитывает структуру языка, на котором записаны данные, где вы хотите обнаружить отличия». Порой diff находит множество отличий, которые в действительности (логически) могут относиться к единственному изменению — просто «разбросанному» по разным строкам. BDiff призван решить этот недостаток в diff. Аналогично — BGrep для grep.

Работа частично финансировалась компанией Google и Министерством энергетики США.

Научная статья авторов с обзором bgrep и bdiff доступа в PDF (англ. яз).

Постоянная ссылка к новости: http://www.nixp.ru/news/11529.html. Дмитрий Шурупов по материалам ITworld.

fb twitter vk
ungzd

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

myst

Инструмент diff не учитывает структуру языка, на котором записаны данные.

Язык упрощать надо, а не комбайны наворачивать.

…«сложных» данных (не обычных логов, где каждая запись хранится в виде строки определенного формата) — например, от операционной системы Cisco IOS.

Почему я не удивлён?