При попытке поиска в рамках файла может возникнуть ошибка “Binary file (standard input) matches”.
Проблема может быть в содержимом файла, которое включает спецсимволы, на основании которых grep воспринимает файл не как текстовый файл. Решением является добавление аргумента -a к вызову grep.
Пример, в котором из файла вытаскиваем вхождение подстроки и считаем количество вхождений:
cat server.log | grep -a "find_this"