LINUX.ORG.RU

ugrep 7.3

 , , , ,

ugrep 7.3

0

3

3 марта состоялся выпуск 7.3 быстрой кроссплатформенной консольной утилиты поиска текста ugrep.

Для более эффективного поиска в большом количестве файлов на медленных носителях, или при поиске во многих архивах (zip, zstd, tar, bzip2, bzip3, 7z, lzma, lz4, brotli и др.), можно предварительно выполнить индексирование утилитой ugrep-indexer (входит в поставку ugrep, начиная с версии 6.0).

Утилита написана на языке C++ и распространяется по лицензии BSD-3.

В этом выпуске произведены улучшения удобства использования, а также исправлена работа опций -i (--ignore-case) и -j (--smart-case). Теперь они используют собственные функции изменения регистра букв Юникода, не входящих в ASCII. Например, echo "Śrem" | ug -i "ś.*" теперь завершится успешным нахождением совпадения и напечатает 1: Śrem, как и ожидает пользователь.

>>> Список изменений версии 7.3 на GitHub

★★★★★

Проверено: maxcom ()
Последнее исправление: CrX (всего исправлений: 2)

bzip3

https://github.com/kspalaiologos/bzip3

A better, faster and stronger spiritual successor to BZip2. Features higher compression ratios and better performance thanks to a order-0 context mixing entropy coder, a fast Burrows-Wheeler transform code making use of suffix arrays and a RLE with Lempel Ziv+Prediction pass based on LZ77-style string matching and PPM-style context modeling.

Like its ancestor, BZip3 excels at compressing text or code.

В lzbench 2.0 и 2.0.1 недавно добавили bzip3.
$ lzbench -ebzip2,1,3,5/bzip3,1,3,5 ucd.all.flat.xml

lzbench 2.0.2 (64-bit Linux)  Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz

Compressor name    C,D Threads  Compress. Decompress. Compr. size  Ratio Filename
bzip2 1.0.8 -1         I= 1, 1   9.73 MB/s  79.4 MB/s    10304728   4.39 ucd.all.flat.xml
bzip2 1.0.8 -3         I= 1, 1   8.05 MB/s  79.7 MB/s     7158631   3.05 ucd.all.flat.xml
bzip2 1.0.8 -5         I= 1, 1   7.31 MB/s  77.8 MB/s     6407700   2.73 ucd.all.flat.xml
bzip3 1.5.1 -1         I= 1, 1   47.6 MB/s  66.2 MB/s     5116294   2.18 ucd.all.flat.xml
bzip3 1.5.1 -3         I= 1, 1   47.8 MB/s  66.1 MB/s     4572457   1.95 ucd.all.flat.xml
bzip3 1.5.1 -5         I= 1, 1   46.5 MB/s  63.9 MB/s     4408704   1.88 ucd.all.flat.xml
done... (cIters=1 dIters=1 cTime=1.0 dTime=2.0 chunkSize=1706MB cSpeed=0MB)
dataman ★★★★★
() автор топика
Ответ на: комментарий от CrX

$ lzbench -ebzip3,1,3,5/zstd,1,3,5,10,21 ucd.all.flat.xml

Compressor name    C,D Threads  Compress. Decompress. Compr. size  Ratio Filename
bzip3 1.5.1 -1         I= 1, 1   47.8 MB/s  66.6 MB/s     5116294   2.18 ucd.all.flat.xml
bzip3 1.5.1 -3         I= 1, 1   47.7 MB/s  65.8 MB/s     4572457   1.95 ucd.all.flat.xml
bzip3 1.5.1 -5         I= 1, 1   45.9 MB/s  63.2 MB/s     4408704   1.88 ucd.all.flat.xml
zstd 1.5.7 -1          I= 1, 1   1575 MB/s  4023 MB/s     9072491   3.87 ucd.all.flat.xml
zstd 1.5.7 -3          I= 1, 1   1103 MB/s  3904 MB/s     8788556   3.75 ucd.all.flat.xml
zstd 1.5.7 -5          I= 1, 1    499 MB/s  3867 MB/s     8254774   3.52 ucd.all.flat.xml
zstd 1.5.7 -10         I= 1, 1    168 MB/s  4519 MB/s     7110850   3.03 ucd.all.flat.xml
zstd 1.5.7 -21         I= 1, 1   3.75 MB/s  3559 MB/s     6259436   2.67 ucd.all.flat.xml
done... (cIters=1 dIters=1 cTime=1.0 dTime=2.0 chunkSize=1706MB cSpeed=0MB)
dataman ★★★★★
() автор топика
Ответ на: комментарий от dataman

Ясно. Жмёт именно текст/код весьма неплохо, стало быть, но при этом о-о-о-очень медленно (особенно декомпрессия).

CrX ★★★★★
()
Ответ на: комментарий от CrX

Как оно в сравнении с ZSTD?

ZSTD, на данный момент, вне конкуренции.

iron ★★★★★
()

можно предварительно выполнить индексирование

Может просто в БД нормальную засунуть, и не изобретать сущности без необходимости?

Smacker ★★★★★
()
Ответ на: комментарий от Smacker

Не помешает.
Хотя $ man ugrep-indexer будет достаточно.

dataman ★★★★★
() автор топика
Ответ на: комментарий от Clayman

Ugrep is faster than GNU grep, Silver Searcher, ack, sift. Ugrep’s speed beats ripgrep in most benchmarks.

Ну и у ripgrep есть свои минусы, например, не умеет искать по содержимому .tar файлов и т.д. Разрабы сабжа просто учли это у себя. Не реклама, понимаю, что кто как привык, тот с тем и работает.

Gonzo ★★★★★
()
Ответ на: комментарий от Clayman

Ripgrep

Написано на расте. Следовательно, эта реализация grep есть R.I.P, как это подчеркнули авторы в названии)

iron ★★★★★
()
Последнее исправление: iron (всего исправлений: 1)
Ответ на: комментарий от Gonzo

Сфигали? Я вообще на русте не пишу и для меня это такая же галимая низкоуровневая императивщина, как и легаСи. Просто чуть менее унылая. Ну и забавно наблюдать как фанатов корежит.

Clayman ★★
()
Ответ на: комментарий от Clayman

галимая низкоуровневая императивщина, как и легаСи

Ясно, из осуждающих.

Gonzo ★★★★★
()
Ответ на: комментарий от Clayman

Ты знаешь, я с тобой согласен. Хоть сам и не пишу ни на чем, но думаю, надо всё просто взять и поделить.

Gonzo ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.