Комбинации команд find и grep

Команды find и grep можно комбинировать, чтобы выполнять расширенный поиск. В следующем примере команда find просматривает все файлы на предмет того, нет ли в них последовательности символов emacs. Если такая последовательность обнаруживается, то название файла выводится на экран. Следует обратить внимание на то, что нельзя указывать параметр –print перед –exec (в отличие от предыдущего примера, команда "grep emacs *.tex" учитывает все файлы с расширением *.tex, независимо от глубины вложения подкаталога, в котором они могут находиться).

find -name '*.tex' -type f -exec grep -q emacs {} \; -print

Следующая команда просматривает в текущем каталоге все файлы размером менее 10 Кбайт на предмет наличия в них регулярного выражения case.*in. Список найденных файлов сохраняется в файле result. Ограничение размера файла вводится для того, чтобы исключить из поиска двоичные файлы (обычно они гораздо больше 10 Кбайт).

user$ find -name '*' -maxdepth 1 -size -10k -exec grep -q \
> case.*in {} \; -print > result