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.