С недавних пор начал заниматься изучением CMS систем. Соответственно появилась потребность менять под себя многие дефолтные параметры. Всё чаще начал сталкиваться с острой необходимостью поиска файлов по их содержимому. На web-страничке есть надпись, а хочется заменить её в коде. Вот и задался я найти решение дабы в терминале стандартными средствами системы осуществлять этот поиск. Решение получилось довольно простым и в то же время практичным.
find /path_to_find/ -exec grep -H -n 'what_to_look_for' '{}' /dev/null \; -print | awk -F \: '{ print $1" - "$2 }'
где $1 — имя файла с совпавшим текстом, $2 — номер строки в файле.
Возможно, необходимо будет результат записать в файл. Тогда поможет конструкция
find /path_to_find/ -exec grep -H -n 'what_to_look_for' '{}' /dev/null \; -print | awk -F \: '{ print $1" - "$2 }' > find.log