Ubuntu. Как искать по содержимому файлов?


Всегда удобно использовать программные средства для привычных и обыденных задач — например поиск файлов или текста (содержимого) этих файлов. Гораздо интереснее, когда подобная задача стоит, когда у Вас под рукой только консоль. Но не беда — в этой статье я покажу, как искать по содержимому, используя консоль Ubuntu.

Итак, все гениальное просто. Первый пример — поиск текста «foo» в папке «/home/bar»:

sudo grep -rl 'foo' /home/bar

sudo при поиске не обязателен, если Вы ищете только среди доступных текущему пользователю файлов. При необходимости поиска по всем файлам, без исключений — используйте sudo.

Чтобы вывести результат с подсветкой, которая существенно упростит его восприятие используйте следующий пример:

sudo grep -r 'foo' /home/bar/ --color

Для поиска только в конкретном файле укажите его имя вместо папки:

grep foo bar.php

Но, при этом Вы получите все совпадения. Если же Вам нужно искать только совпадения в отдельном слове — примените директиву -w.

grep -w foo bar.php

При поиске в больших файлах полезно знать строку, в которой найдено совпадение. Здесь поможет директива -n.

grep -rnw foo /home/bar

Кстати, директива -r указывает на проведение рекурсивного поиска — т.е. все подпапки, их подпапки и т.д.

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


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *