22 Ноября 2024, 03:51

GNU grep

Автор ping_Win, 12 Февраля 2009, 11:55

« предыдущая тема - следующая тема »

0 Пользователей и 1 Гость просматривают эту тему.

ping_Win

12 Февраля 2009, 11:55 Последнее редактирование: 24 Июня 2011, 22:29 от Zhek@Ch
[size="3"]Вышел релиз утилиты grep 2.5.4[/size]

"GNU grep 2.5.4 released" - вышел релиз утилиты grep 2.5.4, в котором представлены исправления ошибок, накопившихся с прошлого релиза, выпущенного в августе 2007 года.

http://www.opennet.r...shtml?num=20224

Zhek@Ch

24 Июня 2011, 22:31 #1 Последнее редактирование: 24 Июня 2011, 22:31 от Zhek@Ch
[size="3"]GNU grep 2.9[/size]
 
21 июня Jim Meyering оповестил сообщество о выходе новой версии программы GNU grep 2.9. Изменения заключают в себе исправление ошибок, прежде всего, это существенное увеличение производительности при работе с диапазонами многобайтовых символов (типа '[áéíóú]'). Спасибо Paolo Bonzini за эту работу!

Другие исправления:

Расширенные регулярные выражения типа '(^| )*( |$)' теперь не разносят кучу (ошибка появилась в grep-2.6).

grep -P больше не вылетает, когда достигается предел PCRE при поиске с возвратом. Ранее например, echo aaaaaaaaaaaaaab |grep -P '((a+)*)+ прекращала работу аварийно. Теперь нет. Теперь выводится сообщение о проблеме и происходит корректное завершение работы с кодом 2.

Устранены проблемы при работе с символами в диапазоне 0x80..0xff, существовавшие в некоторых нетривиальных локалях (например, ru_RU.KOI-8). Ранее команда echo c | grep '[c]' при 'c' в указанном диапазоне давала некорректный результат (ошибка появилась в версии grep-2.6).

Исходные коды доступны по ссылке.

>>> Подробности на Саванне


Zhek@Ch

11 Августа 2011, 01:55 #2 Последнее редактирование: 11 Августа 2011, 01:56 от Zhek@Ch
[size="3"]В рамках проекта Glark развивается альтернатива Grep [/size]

Представлен проект Glark, в рамках которого создана утилита, претендующая на роль улучшенной альтернативы grep. Код Glark написан на языке Ruby.

Отличительные черты Glark:

  • Подсветка масок и имен файлов в выводе;
  • Использование perl-совместимых регулярных выражений (PCRE), привычных для разработчиков на языках Perl, PHP, Python и Ruby;
  • Возможность использования составных выражений, работающих с учетом содержимого нескольких строк. Например: "glark --and=5 --or cout print --or double float *.c" выполнит поиск ключей "cout" или "printf" в ближайших 5 строках от строк с ключами "double" или "float";
  • Автоматическое определение текстовых файлов (поиск в бинарных файлах не производится);
  • Режим совместимости с GNU grep;
  • Поддержка указания диапазонов. Указание опций "--before" и "--after" позволяет ограничить область поиска, отсеяв определенную часть файла (например, для игнорирования первых 20 строк с заголовком "glark --after 20 маска файл").

Zhek@Ch

17 Ноября 2011, 15:57 #3 Последнее редактирование: 17 Ноября 2011, 15:58 от Zhek@Ch
[size="3"]GNU grep-2.10: исправление ошибок[/size]
 
GNU grep -- программа, ищущая в файле строки, чьи подстроки соответствуют заданному регулярному выражению.

Спустя пять месяцев разработки после выхода grep-2.9 Джим Мейеринг (Jim Meyering) объявил о выходе новой версии. Больших изменений нет. Однако, было сделано много изменений gnulib, включая ряд улучшений переносимости. Часть этих изменений затрагивает и grep.

Достаточно значительные изменения:

  • grep больше не ошибается при обработке байтов с установленным старшим битом при работе в системах, где «char» это знаковый тип (ошибка появлялась только в MS Windows);
  • grep теперь отклоняет такие комадны как
grep -r pattern . > out , в которых файл ввода также является и выводом, так как это может вызывать бесконечные циклы.

>>> Подробности