February 24, 2022

Поиск файлов на сервере данных

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

Наиболее продвинутыми поисковыми возможностями обладает команда grep. Так с ее помощью можно искать файл по содержимому в заданной папке:

grep 'текст_поиска' папка/*

Если текст состоит из одного слова, его не обязательно заключать в кавычки. Однако чаще возникают ситуации, когда поиск должен осуществляться и по вложенным папкам, т.е. рекурсивно с параметром r:

grep -r 'текст_поиска' папка

Для ускорения процесса можно ограничить поиск конкретным расширением файлов, добавив параметр include:

grep -r --include \*.расширение 'текст_поиска' папка

Поисковое выражение может быть регулярным. При этом по умолчанию доступны не все возможности регулярных выражений. Чтобы это исправить, воспользуйтесь дополнительным параметром E. Например, квантификатор "*" работает, а "+" без флага E - нет: