Если вы занимаетесь аудитом исходного кода, отладкой проблем с конфигурацией или поиском в журналах, Linux предлагает мощные инструменты для поиска файлов по их содержимому, а нетолько по имени. С помощью правильных утилит командной строки вы можете найти точные строки, шаблоны или даже многострочные совпадения в тысячах файлов за считанные секунды.
В этом руководстве вы узнаете, как искать файлы с определенным содержимым в Linux, используя такие инструменты, как:
grep
, find
, ack
, ripgrep
Давайте смоделируем рабочий каталог с файлами конфигурации.
grep -r "password" ~/test-config
. = текущий каталог
-type f = только файлы
–exec grep -l “password” {} = запустить grep для файлов и показать только те, которые содержат “password”.
Пример: Найти все файлы .conf в каталоге /etc/, содержащие “max_connections”
find . -name "*.conf" -exec grep -Hn "max_connections" {} +
find . – поиск в текущем каталоге
–name “*.conf” – ищет только файлы .conf
–exec grep -Hn – поиск строки max_connections
–H выводит имя файла
–n – номер строки
Игнорирует .git, node_modules, vendor/ и т.д.
Поддерживает фильтры regex и типов файлов
Быстрее и чище, чем grep , в dev-средах
Установите ack (если он еще не установлен)
sudo apt install ack-grep # Debian/Ubuntu
brew install ack # macOS
ack "connectDB" ~/test-code
Сверхбыстрый (написан на Rust)
Рекурсивный по умолчанию
Подсветка синтаксиса
Git-aware (пропускает .gitignored файлы)
Некоторые системные файлы требуют повышенных прав:
Или в сочетании с find:
2>/dev/null: подавляет ошибки разрешения
Комбинация: grep -rwi “word”
✅ Избегайте бинарных файлов:
✅ Предельная глубина:
✅ Поиск файла журнала с указанием даты:
Пример – извлечение найденной строки через 2 строки:
Или используйте awk для извлечения шаблонов:
Поиск файлов по содержимому – один из самых необходимых навыков для любого пользователя Linux или разработчика. От простых команд grep до таких мощных инструментов, как ripgrep , вы можете быстро найти информацию, скрытую в тысячах файлов.
Владение этими инструментами означает более быструю отладку, безопасный аудит и более эффективные рабочие процессы.