Використання пошуку файлів за вмістом у Linux дає змогу істотно скоротити час і зусилля під час пошуку конкретної інформації у великих і складних файлових системах.
Цей пошук може бути особливо корисним у тому випадку, коли потрібно знайти файли, що містять певний рядок або ключове слово, а також у випадках, коли потрібно знайти всі файли, які відповідають певному шаблону або критерію.
Пошук файлів за вмістом може використовуватися для різних завдань, наприклад для пошуку:
Загальним призначенням пошуку файлів за вмістом є полегшення роботи з файловою системою і знаходження необхідної інформації у файловій системі.
Почнемо з утиліти ack. Вона була створена у 2005 році як альтернатива grep і швидко стала популярною серед розробників.
Вона має кілька переваг перед grep
, включно з:
grep
. Це означає, що ви можете легко знайти файли, приховані в системі.Приклади використання ack:
- Знайти всі файли в поточній папці та її підпапках, що містять слово
"test": ack "test"
- Те саме, але виключаючи файли з розширенням
.bak: ack "test" --ignore-file=match:/.bak$/
- Знайти всі файли в поточній папці, що містять рядок "hello", і вивести перші 2 рядки кожного файлу:
ack "hello" --heading --max-count=2
Другий цікавий інструмент - це ripgrep. Він аналогічний ack за багатьма параметрами, але використовує швидший алгоритм пошуку, що робить його особливо корисним для великих проєктів.
Ось кілька прикладів:
"test": rg "test"
.bak: rg "test" --glob "!*.bak"
rg "hello" --heading --max-columns=2
Насамкінець варто згадати fzf. Це не лише пошуковик рядків, як ack і ripgrep. Fzf використовується як утиліта для пошуку файлів, папок і елементів у списку. В іншому він працює подібно до ack/ripgrep, але з доданою можливістю живої фільтрації результатів. Ось кілька прикладів:
- Шукати файли, що починаються з літери F на вашому комп'ютері:
locate F | fzf -m
- Вийти з поточної папки і перейти в директорію, яку я хочу:
cd **<TAB> | fzf
- Вибрати ревізії SVN і скопіювати номер у буфер обміну:
svn log | fzf --reverse --ansi | awk '{print $1}' | pbcopy
Сподіваємося, що ці інструменти допоможуть вам знайти потрібні файли та рядки швидко та ефективно. Який би ви не вибрали, усі вони пропонують вдосконалений пошук, який може значно прискорити вашу роботу.