Зачем вообще использовать «кошку» в этом случае? Я всегда нахожу странным, как люди используют «кошку» без всякой причины. Просто делать:
find -type f / | xargs grep "string to find"
Конечно, поиск каждого файла на вашем диске будет очень медленным. Возможно, вам лучше использовать какую-нибудь программу индексирования, если вам часто приходится искать подобным образом. Например, Beagle - довольно обширная поисковая система, она существует уже некоторое время. Другие варианты - KDE Strigi или Google Desktop.
По крайней мере, вы должны использовать «locate» вместо «find», он только индексирует имена файлов, а не их содержимое, но это все равно ускорит процесс. Кроме того, вы должны фильтровать по типу файла, прежде чем использовать grep. Например, использование grep для файла avi размером 100 МБ или чего-то другого - просто трата времени.