Cómo usar find y grep para encontrar ficheros que contengan un determinado texto

Para buscar ficheros que contienen determinado texto, se pueden combinar en unix los comandos find y grep.

Por ejemplo, para encontrar el texto «textoaencontrar» en cualquier fichero a partir del directorio en el que estamos, se puede hacer de esta forma:

$ find . -type f -exec grep -H textoaencontrar {} \;

El comando «find . -type f» localiza cualquier fichero de tipo «fichero» (no directorios, links, etc) y con la opción “-exec”, pasa los resultados al comando “grep” para que los explore. La opción -H del comando «grep» añade el nombre del fichero a los resultados de las búsquedas.