rga: поиск внутри PDF, Word и архивов в папке без сервера
ripgrep-all (rga) ищет слово внутри PDF, документов Word, архивов и баз SQLite прямо из консоли, без сервера и индексатора. Разобрал лицензию, форматы, установку на Windows, кэш и границы: сканы без OCR, Excel и конфиденциальность.
Сделаю под ключ: разберу задачу, назову срок и цену. Чтобы начать, напишите в Telegram одной фразой.
Настройка поиска по документам и ИТ-инфраструктурыГде в этой папке неустойка 0,1 процента
Директор спрашивает, в каком из договоров был пункт про неустойку 0,1 процента в день. Договоров четыреста. Часть лежит в docx, часть в PDF, прошлый год в архиве ZIP, а внутри него ещё один архив с перепиской. Поиск по имени файла здесь бесполезен, имя «Договор_15_финал2» ничего не говорит о содержимом.
Каталог поверх дисков я разбирал в статье про Spacedrive, архив со сканами и поиском на сервере в статье про Paperless-ngx. Есть и третий путь, самый дешёвый: ничего не ставить на сервер и искать прямо в папке одной командой.
Что такое rga и в каком он состоянии
rga (github.com/phiresky/ripgrep-all) написан на Rust. Автор Phiresky, репозиторий создан 4 июня 2019 года. Лицензия AGPL-3.0: в файле LICENSE.md полный текст AGPL, в Cargo.toml указано AGPL-3.0-or-later (GitHub в карточке пишет «NOASSERTION» из-за вступления перед текстом). Для работы внутри компании публиковать ничего не нужно. Если вы встраиваете rga в свой сетевой сервис или меняете его код, лицензию стоит показать юристу.
На 21 октября 2026 года у репозитория около 9,9 тысячи звёзд, он не архивный. Последний коммит от 17 сентября 2026, последний релиз v0.10.10 вышел 9 ноября 2025. Из 35 контрибьюторов подавляющая часть коммитов у автора (около 340), на втором месте человек с 62. В 2022 году автор писал в обсуждении проекта, что это небольшой побочный проект. Читать документацию придётся по-английски, русскоязычной нет.
Какие форматы читает и что для этого нужно
Список адаптеров из README: pandoc (docx, odt, epub, fb2, html, ipynb), poppler (PDF через pdftotext), ffmpeg (метаданные, главы и субтитры в mkv, mp4, avi, mp3, ogg, flac, webm), zip и jar, tar, сжатые файлы (gz, bz2, xz, zst, tgz), sqlite (db, sqlite, sqlite3). Почтовый адаптер для eml и mbox выключен по умолчанию и включается флагом --rga-adapters=+mail. Вложенность архивов по умолчанию ограничена пятью уровнями.
Обратите внимание на то, чего в списке нет: xls и xlsx, старый doc, pptx. Для бухгалтерии с выгрузками в Excel это существенная дыра, проверяйте на своих файлах. Сами конвертеры rga не содержит, он вызывает pandoc, pdftotext и ffmpeg. На Linux их ставят командой apt install ripgrep pandoc poppler-utils ffmpeg.
Пример запроса: rga -i "неустойка" D:Договоры. Ключи у rga общие с ripgrep. В выдаче видны имя файла и строка, для PDF по описанию адаптера добавляется номер страницы.
Установка на Windows и кэш
README называет единственным поддерживаемым способом для Windows Chocolatey (choco install ripgrep-all) или Scoop (scoop install rga). Если скачать zip вручную, зависимости (например pdftotext) не приедут. Нюанс из релизов: в v0.10.10 нет Windows-архива, он был в v0.10.9, и манифест Scoop на сегодня указывает именно на 0.10.9. Есть также Homebrew и MacPorts для macOS, пакеты для Arch, Gentoo и Nix.
Извлечённый текст rga кладёт в кэш: на Windows это папка C:UsersимяAppDataLocal
ipgrep-all. По README повторные поиски по тому же набору файлов идут заметно быстрее. Измерений в README нет, замеров я не делал. По статье автора 2019 года первый проход быстрее pdfgrep за счёт многопоточности, а повторный почти как поиск по обычному тексту. Это старый источник и без цифр. Результат длиннее примерно 2 МБ после сжатия в кэш не попадает и считается заново при каждом запуске. Путь меняет --rga-cache-path, отключает --rga-no-cache.
Что важно учесть
Сканы. Адаптер poppler достаёт только текстовый слой PDF. Скан без слоя даст пустой результат. OCR в списке адаптеров нет, в каталоге src/adapters файлов под него нет, в вики проекта стоит пометка «Todo: tesseract OCR adapter». Подключить OCR можно через собственные адаптеры в конфиге (внешняя программа, которую вы укажете), готовых рабочих связок я не проверял. О том, как распознают сканы, писал в статье про OCR с фото и скана.
Кэш и конфиденциальность. В кэше лежит сжатый текст ваших договоров, зарплатных ведомостей, переписки. README про шифрование кэша ничего не говорит. Держите его на зашифрованном диске, для папок с чувствительным содержимым запускайте с --rga-no-cache и чистите папку при увольнении сотрудника.
Безопасность. rga запускает внешние программы над файлами, которые вы ему дали. Пересланный контрагентом архив с PDF разбирают pandoc, pdftotext и ffmpeg, а любая программа-разборщик чужих файлов может иметь уязвимости. Не гоняйте rga по подозрительным вложениям на рабочем компьютере с доступом ко всему, держите конвертеры обновлёнными. Защиты от архивов-бомб, кроме лимита вложенности, в README я не нашёл.
Кириллица и кодировки. В README о них не сказано. В репозитории открыт запрос 2020 года про не-UTF-8 электронные книги. Русские файлы я не проверял, прогоните свои образцы, прежде чем обещать кому-то результат. Про зашифрованные и повреждённые PDF в README тоже нет ни слова. По журналу изменений (версия 0.9.2) ошибки по проблемным файлам выводятся короткой строкой, скрыть их можно флагом --no-messages.
Что можно сделать уже сейчас
Поставьте rga на один компьютер через Scoop или Chocolatey и возьмите копию папки на 100 договоров, актов и писем. Поищите три реальных слова: фамилию контрагента, номер счёта, сумму. Сравните с тем, что нашёл бы человек.
Положите в ту же копию несколько скан-PDF и xlsx. Это покажет границу: что находится, что нет.
Решите, где живёт кэш: поменяйте путь на зашифрованный диск и запишите правило для сотрудников.
Если сканов много, нужен OCR перед поиском: такой конвейер, ярлык «Найти в документах» и инструкцию на одну страницу я собираю в рамках распознавания документов и работы с ИТ-инфраструктурой.
Частые вопросы
Нужен ли для rga сервер или база?
Нет. По README это консольная программа и локальный кэш. Индекс всех файлов заранее не строится, первый запуск по большой папке читает документы.
Найдёт ли rga текст на отсканированном договоре?
Только если у PDF уже есть текстовый слой. Встроенного распознавания в списке адаптеров нет.
Можно ли искать в письмах Outlook или Thunderbird?
README описывает почтовый адаптер для файлов eml и mbox, выключенный по умолчанию, с вложениями. Файлы pst Outlook среди форматов не названы.
Коротко о главном
rga закрывает узкую задачу: найти слово внутри разнородных файлов в папке без сервера и индексатора. Он бесплатный, с открытым кодом под AGPL-3.0, но это инструмент для консоли, его нужно ставить, проверять на русских образцах и аккуратно обращаться с кэшем.
Хотите, чтобы по вашей папке с договорами и актами искали одной кнопкой, а сканы сначала распознавались? Напишите мне в Telegram кодовое слово «ПЕРЕРЫТЬ». Проверим на ваших файлах, настроим поиск, кэш и правила доступа.
Что я делаю для бизнеса
Напишите одной фразой, что нужно. Отвечу, что подойдёт, сколько займёт и сколько стоит. Сообщение уже подготовлено.
- Боты в Telegram, MAX, VK
- Автоматизация процессов и CRM
- Аналитика и дашборды
- Сайты и лендинги под ключ
Разборы, кейсы и практика — без воды. Выходит регулярно, читать 3–5 минут.


