The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск утилиты GNU grep 3.4

03.01.2020 09:43

Представлен выпуск утилиты для организации поиска данных в текстовых файлах - GNU Grep 3.4. В новой версии добавлена опция "--no-ignore-case", отключающая действие настроек отмены учёта регистра символов (-i, --ignore-case). Исключено попадание под маску "." некорректных последовательностей UTF-8. При выполнении "grep -Fw" решены проблемы с ложным сопоставлением данных в многобайтовых локалях, отличных от UTF-8. Устранены провалы в производительности при обработке большого числа шаблонов без обратных ссылок, а также шаблонов вида '01.2', приводящих к выполнению внутренней пересортировки токенов.

  1. Главная ссылка к новости (https://www.mail-archive.com/i...)
  2. OpenNews: Выпуск утилит GNU Grep 3.2 и Sed 4.6 (следом вышли выпуски 3.3 и 4.7)
  3. OpenNews: Выпуск GNU Binutils 2.33
  4. OpenNews: Выпуск GNU Mes 0.21, инструментария для самодостаточной сборки дистрибутивов
  5. OpenNews: Новая версия Cygwin 3.1.0, GNU-окружения для Windows
  6. OpenNews: Доступен GNUnet 0.12, фреймворк для построения защищённых P2P-сетей
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/52128-grep
Ключевые слова: grep
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (84) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, BSD_Cucks_BTFO (?), 10:05, 03/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –8 +/
    Не нужно. ripgrep в 3.5 быстрее.
     
     
  • 2.2, A.Stahl (ok), 10:13, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +10 +/
    А нам некуда спешить: тише едешь -- дальше будешь. А то грепают тута аки самолёты, нет чтобы остановиться и оглянуться куда летят-то. Кто-то ведь в пропасть летит. Но нет, летят, бегут куда-то. Зачем? Эх-х-х...
     
     
  • 3.19, qqq (??), 14:39, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    иногда надо по-быстрому в многометровом логе найти нужное событие...
     
     
  • 4.22, 12345 (??), 14:56, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    многогиговом
     
     
  • 5.50, Michael Shigorin (ok), 19:50, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > многогиговом

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

    Например, вот человек несколько лет назад описал свою "замену Splunk на открытом софте": http://edgeofsanity.net/article/2012/06/17/central-logging-with-open-source-s

     
     
  • 6.55, IdeaFix (ok), 20:52, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Имхо, пока ничего лучше sawmill не придумали для этой задачи, но... даже sawmill как-то не может эффективно в 16-32 треда и в сотню гигов памяти. Да, логи скорее малотеровые, чем многогиговые....
     
     
  • 7.72, GentooBoy (ok), 00:32, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Главное настроить систему логирования на системе логирования, что бы когда она будет падать определить причину.
     
  • 7.75, Anonymouss (?), 00:55, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    дороговато для грепа
     
  • 3.20, Аноним (20), 14:49, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Тогда греп надо на электрон переписать.
     
     
  • 4.87, супернуб (?), 09:22, 06/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    не успеюют - быстрее сделают grepd
     
  • 2.7, Wilem (?), 12:08, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да, rg и fd - должны быть на каждой системе. Fd кстати сделан поверх либы walkdir, которую тоже BurntSushi написал. Великий человек.
     
  • 2.12, bircoph (ok), 14:08, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    riggrep написан на rust, не учитывает особенности unicode (u(ss)->ß) и не портируем на некоторые современные и безопасные архитектуры.
     
     
  • 3.16, Wilem (?), 14:25, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Объясни по-подробнее про особенности utf8, что не так?
     
     
  • 4.21, Аноним (21), 14:51, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я не знаю, что он имел в виду, но венда тоже не умеет в utf8. По-моему я даже в бсод ронял 10 и кучу програм в ней всего 1 символом (совершенно валидным в линуксе), не знаю, починили ли с тех пор. Так что особенности есть.
     
     
  • 5.23, Wilem (?), 15:02, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    https://snipboard.io/5E9mRX.jpg
     
     
  • 6.25, Аноним (21), 15:28, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > https://snipboard.io/5E9mRX.jpg

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

     
     
  • 7.28, Wilem (?), 15:45, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А что за символы с которыми крешится или которые несовместимы? Прям сейчас бы опробовал на винде и линуксе.
     
     
  • 8.30, Аноним (21), 16:00, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я не помню, какие именно, но даже в википедии емнип было написано в японской 1... текст свёрнут, показать
     
  • 5.67, Аноним (67), 22:33, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    UTF-8 не нужен при наличии полноценного юникода. Квест "угадай сколько байтов потянет каждый символ длинной-предлинной строчки если в ней гарантированно не только латиница" сильно на любителя.
     
     
  • 6.69, Аноним (21), 22:57, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > UTF-8 не нужен при наличии полноценного юникода. Квест "угадай сколько байтов потянет
    > каждый символ длинной-предлинной строчки если в ней гарантированно не только латиница"
    > сильно на любителя.

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

     
     
  • 7.70, Michael Shigorin (ok), 23:09, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Полноценный - это какой? UTF-32?

    В винде вроде двухбайтовый UCS2 фигурировал...

    PS: "полноценный", ага.

     
  • 7.83, Аноним (83), 23:08, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В UTF-8 в теории символ может до 6 байт весить, это сильно лучше или как?
     
     
  • 8.84, Аноним (21), 23:23, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Очень в теории, текущий лимит 4 байта из соображений совместимости И всяко лучш... текст свёрнут, показать
     
  • 3.26, Аноним84701 (ok), 15:28, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > riggrep написан на rust, не учитывает особенности unicode (u(ss)->ß)

    Угу, то ли дело греп, на который еще не так давно (лет 6 назад) любители вставить "ß" затейливо матюкались  из-за принципиальных проблем поиска с умляутами.

    % echo "THISS"|grep -ic "ß"                                                    
    0

    % echo "straße"|grep -ic "ss"                                                
    0

    % grep --version                                                              
    grep (GNU grep) 3.3

     
     
  • 4.27, Wilem (?), 15:42, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В спеке на утф-8 сказано, что Eszett приравнивается к "ss"? Я такого найти не смог, более того на стековерфлоу сами немцы говорят, что с точки зрения языка Eszett *не равен* "ss", плюс у них вокруг этого переодически правила меняются. Также интересно - какое дело до обработки этого символа юзеру опеннета? Товарищ парсит в консоли немецкие логи?
     
     
  • 5.36, Аноним84701 (ok), 17:29, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Мне лень смотреть Ведь это не я писал о том, что ripgrep не учитывает особенно... большой текст свёрнут, показать
     
     
  • 6.48, Michael Shigorin (ok), 19:44, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Небольшая подсказка насчет новых-старых правил:

    Ну вот, опять восхищаюсь Вашими тщательностью и кругозором :-)
    Был бы рад знакомству.

    PS: а может, в 2020 опеннетовку проведём хотя бы в Москве или Питере?

     
     
  • 7.52, Аноним84701 (ok), 20:08, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Небольшая подсказка насчет новых-старых правил:
    > Ну вот, опять восхищаюсь Вашими тщательностью и кругозором :-)

    Просто приходится много общаться с немецкоязычными, поэтому и разбираться с вывертами правописания  приходилось особо тщательно – так что это не кругозор, а скорее "сопутствующие спец. знания"  ;-)

    > Был бы рад знакомству.
    > PS: а может, в 2020 опеннетовку проведём хотя бы в Москве или Питере?

    Лет 6-7 назад вполне. Сейчас, к сожалению, то семья, то здоровье "теребят".

     
  • 5.85, Anonymoustus (ok), 11:46, 05/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > переодически

    Период, а не переод.

     
  • 2.13, Аноним (13), 14:18, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    У него беда с докой. Он понимает опции -e, -f, -l, -n, -s, -q, -v?
     
     
  • 3.15, Wilem (?), 14:23, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
        rg --help

    Довольно подробная.

     
  • 3.17, Wilem (?), 14:28, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    https://pastebin.com/N7xZyMnD
     
  • 2.18, Аноним (18), 14:31, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я люблю Rust и юзаю rg, но вот такие провокационные комментарии мне совсем не нравятся. rg - это альтернативная молодая тула: пусть со своими шикарными преимуществами, но и со своими альтернативными недостатками. Нет ничего плохого в том, что стандартный инструмент развивается и становится лучше, потому что этот инструмент на данный момент везде.

    На opennet и так люто ненавидят Rust и костерят его всякими "хрустами", а такие провокации только масла в огонь подливают. Или это и была цель?

     
     
  • 3.24, Wilem (?), 15:04, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Тезис был: grep - не нужен. Если ты считаешь, что это не так, объясни - зачем нужен grep при наличии лучшей альтернативы?
     
     
  • 4.29, Аноним (18), 15:51, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Я держусь позиции, что Rust должен будет заменить C, особенно когда до конца реш... большой текст свёрнут, показать
     
     
  • 5.32, Wilem (?), 16:02, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Греп обязательно должен быть в стандартных поставках потому, что многие скрипты его используют. Но самому пользоваться грепом не вижу смысла. Также, как и find-ом (fd сильно быстрее). Я их оба два закатал в базовый докеровский образ на котором остальные все образы на работе базируются. Очень удобно.

    Что касается пакетов в дистрибутивах, это вообще по-барабану - есть ripgrep в пакетах или нет. cargo install ripgrep если для личных нужд. А для рабочих есть ansible или образы для поддержания единства конфигурации машин.

     
     
  • 6.33, Аноним (18), 16:08, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В целом согласен, но все же поскольку от GNU grep пока никуда не убежишь, это хорошо, что в нем хотя бы баги латают.
     
  • 5.47, Michael Shigorin (ok), 19:41, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > 3. Rust пока что вызвает много недоверия у сообщества, потому шанс
    > того, что мейнтейнеры текущих популярных дистрибутивов зареплейсят
    > grep на rg в качестве стандартной утилиты довольно мал.

    Я бы сказал -- тождественно равен нулю.  Особенно для тех, которые заморачиваются не-x86 (и ещё и не-arm) -- там "помножить на хреновую поддержку архитектур".

     
  • 5.61, Аноним (61), 21:53, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Я держусь позиции, что Rust должен будет заменить C,

    Рано или поздно что-то заменит C. Но почему вы уверены, что это будет Rust, а не, например, Verona или подмножество betterC языка D?
    >особенно когда до конца решатся все проблемы llvm с алиасингом и Rust станет в целом быстрее, чем C

    А как решится проблема с запретом использования названия Rust в альтернативных реализциях? Кажется, уже кто-то наступал на подобные грабли, не Sun ли это был?

     
     
  • 6.65, Аноним (18), 22:25, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Возможно и не Rust. Не хотелось бы, чтобы Verona, едва ли ситуация с именем в таком случае будет лучше, а то может и не в одном имени проблемы будут, это же microsoft.

    По крайней мере, даже если с Rust что-то пойдет не так, скорее всего тот язык, который таки прочно заменит C, будет как минимум использовать многие идеи и наработки из Rust.

    Просто пока у Rust больше всех шансов. К D никто интереса не проявляет, да и он на самом деле не решает такого количества проблем, как Rust, да и комбинация ооп и функционального программирования в Rust очень здорово работает, как по мне. Насколько знаю, автор D даже начал делать borrow checker для своего языка, чтобы это исправить. Может что-то из этого и выйдет. Про Better C мало слышал, чуть позже почитаю.

     
  • 4.38, Аноним (21), 17:59, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А конструкции типа (\[.*?\]+) более лучшая альтернатива грепать умеет? Если нет, то сами знаете, куда её запихнуть вместе с авторами, потому что это совсем не альтернатива.
     
     
  • 5.40, Аноним (18), 18:47, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Очевидно умеет, странный вопрос. И сделает это намного быстрее.
     
     
  • 6.43, Аноним (21), 19:13, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >намного быстрее

    Поставил, пришлось скачать 15мб (раст у меня был). Установка заняла 5 минут, экзешник 4.5 мегабайта (греп 0.2 мегабайта - отработает пока оно считается в память!).

    По факту, результаты следующие.

    grep(на холодную без кэшей):
    real    0m0.009s
    user    0m0.001s
    sys     0m0.002s
    rg(на холодную без кэшей):
    real    0m0.038s
    user    0m0.002s
    sys     0m0.005s
    grep(повторный запуск подряд):
    real    0m0.002s
    user    0m0.001s
    sys     0m0.001s
    rg(повторный запуск подряд):
    real    0m0.004s
    user    0m0.003s
    sys     0m0.001s


    Данных было 15 байт, система на ссд. Вывод: ваша информация - очередной фейк.

     
     
  • 7.44, Аноним (18), 19:31, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Угу, здорово. Я ведь тоже вам могу сейчас случайных чиселок набросать, но заниматься этим я, конечно, не буду, потому что это детский сад.

    Если бы вы действительно хотели выяснить правду, а не подтвердить для себя собственное мнение, вы бы серьезно изучили вопрос, провели бы много разных тестов и скорее всего сюда бы ничего не написали.

     
     
  • 8.45, Michael Shigorin (ok), 19:36, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы бы циферками и ответили, а не детским садом ... текст свёрнут, показать
     
     
  • 9.49, Аноним (18), 19:45, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я не большой специалист в данном вопросе, чтобы анализировать эти чиселки тем б... текст свёрнут, показать
     
     
  • 10.51, Michael Shigorin (ok), 19:54, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    это детский сад, увы Нет, я тоже чаще меряю на глазок , чем отмеряю микром... текст свёрнут, показать
     
     
  • 11.54, Аноним (18), 20:34, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    С высоты птичьего полета, безо всякой теории погрешностей У меня не SSD, как у ... текст свёрнут, показать
     
     
  • 12.60, Аноним (21), 21:33, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А чё, можете сами проверить Вот вам данные http ftp freedb org pub freedb fre... текст свёрнут, показать
     
  • 11.58, Аноним (21), 21:07, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вот вам более реальное тестирование Это всё, что нужно знать о хипстоподелках и... текст свёрнут, показать
     
  • 8.57, Аноним (21), 21:03, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну знаю, у меня не было мнения Но я считаю, что должно быть сопоставимо с си, а... большой текст свёрнут, показать
     
     
  • 9.63, Аноним (18), 22:15, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ни разу не удавалось подобного результата добиваться, у меня всегда rg работал л... текст свёрнут, показать
     
  • 9.71, Аноним (18), 00:20, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Честно говоря, не представляю, как вы такого добились и уже подумываю забрать св... большой текст свёрнут, показать
     
     
  • 10.77, анонн. (?), 01:19, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В брошу свои чиселки с tmpfs, лучший результат 4 запусков code time rg -c ... большой текст свёрнут, показать
     
     
  • 11.79, Аноним (18), 01:36, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вот потому я и не хотел играть в эти идиотские чиселки Всегда можно подобрать у... текст свёрнут, показать
     
  • 10.78, Аноним (21), 01:34, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    1 файл это не спортивно Лично мне нравится руст, но не нравится результат где п... текст свёрнут, показать
     
  • 9.73, анонн. (?), 00:37, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну вот вам code find usr src -type f 124 wc -l 83928 du -sh usr src 2,... текст свёрнут, показать
     
     
  • 10.74, анонн. (?), 00:40, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В догонку rg --version ... текст свёрнут, показать
     
  • 10.76, Аноним (21), 01:13, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    ok, grep ядра без кэшей , 0 5 мб памяти в пике, 2 5 shared code 2863 real ... большой текст свёрнут, показать
     
     
  • 11.80, анонн. (?), 01:52, 04/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Чего-чего, но падений я еще не видел Наверное, потому что не влезет в tmpfs, да... текст свёрнут, показать
     
  • 3.39, Аноним (-), 18:20, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Мне Раст интересен. Но растаманы оталкивают тем что серят в адрес Юникса, ГНУ и Си.
     
     
  • 4.41, Аноним (18), 18:57, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В семье не без... разнообразия. Не знаю, кто занимается такими глупостями, но не обращайте внимания. Изучайте себе язык в удовольствие и не слушайте поехавших - их везде хватает.

    Если бы не C, Rust никогда бы не появился. Rust имеет много корней, в том числе сугубо функциональных, но достоинства и недостатки C в значительной степени повлияли на дизайн Rust. Глупо высмеивать C просто потому, что он не в состоянии дать те же возможности и гарантии, что и Rust, в силу необходимости поддерживать обратную совместимоть. То же с GNU и UNIX - все новое строится на их достижениях и ошибках. Как тут можно что-то высмеивать.

     
  • 3.62, Ordu (ok), 22:00, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Или это и была цель?

    Что за глупый вопрос? Смысл родительского коммента сводится к "не нужно", какая ещё цель кроме провокации cpaча могла за этим стоять?

     

  • 1.3, Аноним (3), 10:39, 03/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +11 +/
    > В новой версии добавлена опция "--no-ignore-case", отключающая действие настроек отмены учёта регистра символов (-i, --ignore-case).

    Теперь осталось добавить опцию --cancel-no-ignore-case[=false]

     
     
  • 2.9, Аноним (9), 13:49, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    --switch-off-disable-cancel-no-ignore-case[=false[=true]]
     
     
  • 3.10, Аноним (9), 13:50, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    остаётся только значение по умолчанию сделать рандомным
     

  • 1.4, Аноним (4), 11:01, 03/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    А может кто-то поделиться с домохозяйкой http://www.gnu.org/software/grep/manual/grep.html только  на русском?
    гулугулу какие-то куски даёт?
     
     
  • 2.8, JL2001 (ok), 12:18, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > А может кто-то поделиться с домохозяйкой http://www.gnu.org/software/grep/manual/grep.html
    > только  на русском?
    > гулугулу какие-то куски даёт?

    оно?
    https://www.opennet.ru/man.shtml?topic=grep&russian=0&category=&submit=%F

     
  • 2.14, iCat (ok), 14:23, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    https://www.google.com/search?q=grep+%D0%B4%D0%BB%D1&
     

  • 1.5, San (??), 11:34, 03/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    не знаю как "гулугулу", а тындекс выдал по запросу "man grep" в первую очередь на русском и первая ссылка на самом опеннете: https://www.opennet.ru/man.shtml?topic=grep&category=1
     
     
  • 2.11, Аноним (9), 13:51, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    не знаю, что за тындэкс, но гугл первой ссылкой выдаёт на русском. а ещё знаю, где запятые ставить
     

  • 1.31, manster (ok), 16:02, 03/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    хотелось бы исключения файлов по маскам или по крайней мере упрощение
     
     
  • 2.34, Ordu (ok), 17:16, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > хотелось бы исключения файлов по маскам

    Почитай про гну-тулбокс, и не проси глупостей. Чтобы выбирать файлы или исключать файлы есть find.

    Делай так: find <find-options> -exec grep -H <grep-options> {} \;

    > упрощение

    Упрощение чего?

     
     
  • 3.35, manster (ok), 17:19, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    мне в git grep нужно
     
     
  • 4.46, Michael Shigorin (ok), 19:39, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > мне в git grep нужно

    git-grep(1) до pathspec дочитайте :-)

     
     
  • 5.53, manster (ok), 20:11, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Заметил, что режим угадываний малоэффективен. Разумеется в курсе, что git grep 123 -- *.c

    Мне надо, чтобы набор масок читался откуда-то из пременных окружений, это раньше работало и вопросов не было.

     
     
  • 6.59, Ordu (ok), 21:24, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Заметил, что режим угадываний малоэффективен. Разумеется в курсе, что git grep 123
    > -- *.c
    > Мне надо, чтобы набор масок читался откуда-то из пременных окружений, это раньше
    > работало и вопросов не было.

    cat >>~/.bashrc
    function git-grep() {
        git grep $* -- $SOURCE_FILES_PATTERNS
    }
    ^D
    exec bash -l

     
     
  • 7.64, manster (ok), 22:19, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Благодарю,

    мне представляется это неплохим решением,
    но не очень понятно как это адаптировать для применения в https://github.com/yasuyk/helm-git-grep

     
     
  • 8.68, Ordu (ok), 22:48, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если я правильно понимаю, то как-то так cat emacs setq helm-git-grep-path... текст свёрнут, показать
     
  • 3.37, . (?), 17:37, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –6 +/
    не, не делай ТАК.
    Прочитай, все же, пока не запретили как неполиткорректную писанину, книжку Кернигана, про юникс, а не про какой-то там gnushitbox. Этим "новым стандартам" вряд ли суждено прожить тридцать лет, как тем.

    Скорее всего, отправятся на помойку, как немодные, еще лет через пяток.

    Заодно - сам, без дополнительных пояснений, сообразишь, после прочтения и, разумеется, понимания, почему это никуда не годная привычка (а владеющему немодным слепым набором - еще и неудобнее набирать, чем правильный вариант)

     
     
  • 4.42, Michael Shigorin (ok), 18:58, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Прочитай, все же, пока не запретили как неполиткорректную писанину

    Хозяйке на заметку: этот же организм в соседней теме про CCC бредил полониевым новичком -- похоже, избирательно доверчив, аки дитя малое... ну а здесь find(1) записал в отходы.  Возможно, всё-таки "просто" с бодуна такое полезло.

    Другое дело, что предусмотрительному человеку бывает полезно ещё и о пробелах подумать хотя бы -- см. самое начало http://altlinux.org/spp

    PS: хотя K&P про универсальную среду программирования -- хороший совет, ага.

     
  • 4.56, Ordu (ok), 20:56, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Заодно - сам, без дополнительных пояснений, сообразишь, после прочтения и, разумеется, понимания

    Не, я не буду читать Кернигана, только для того, чтобы выяснить что-нибудь в стиле "правильный вариант передавать список файлов из find в grep -- пайп, а всё остальное -- неправославно". Мне не интересно это. Ну реально, догмы мне надоели. Я переключился на борьбу с догмами, но и это мне надоело последнее время. Поэтому оставь этот сборник догм за авторством Кернигана себе. Просто перечитай его сам, отдохни душой, просветлись умом. Но не надо мне его подсовывать.

    > владеющему немодным слепым набором - еще и неудобнее набирать, чем правильный вариант

    Слепой набор, наоборот очень моден, тут ты что-то путаешь. Сколько раз твердили админам и кодерам, что он им бесполезен, что если они заняты делом а не туфтой, то 300 зн/мин они не смогут набирать ни при каких условиях, что для того, чтобы набрать пару тысяч строк кода за рабочий день* им и 60 зн/мин хватит за глаза и за уши, а они всё равно дpoчат на слепой набор.

    *) Это кстати кто-то из тех самых патриархов юникс заялял -- Керниган, Ритчи или Томпсон, -- что в самые продуктивные свои дни, ему удавалось набрать пару тысяч строк кода.

    И я не вижу никаких проблем набрать приведённое выше слепым набором. Даже более того, отсутствие пайпа избавляет от необходимости тянуться мизинцем левой руки куда-то далеко. Меня в find вечно напрягает то, что стартовый путь для поиска надо ставить до шаблона имени искомых файлов -- это понятно логически, но моя голова уже лет двадцать не может привыкнуть, потому что она думает мысль в обратном порядке: сначала "что" ищем, и только затем "где" ищем. Но это ведь будет раздражать вне зависимости от зрячести набора, так?

     
     
  • 5.66, Michael Shigorin (ok), 22:25, 03/01/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Я переключился на борьбу с догмами, но и это мне надоело последнее время.

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

     

  • 1.86, Аноним (86), 16:28, 05/01/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Что есть ГНУ? Хорошую вещь ГНУ не назовут.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру