Buscar una cadena dentro de ficheros en linux

Seguro que muchas veces habéis necesitado buscar una cadena dentro de los ficheros de un path bajo el entorno linux.

Pues bien tan sencillo como utilizando la siguiente instrucción:

find path -exec grep -Hn cadena_a_buscar {} \;

Así pues, un ejemplo de ello sería buscar dentro del path /var/www/vhosts/ejemplo.com/httpdocs la función test() en todos los ficheros .php:

# find /var/www/vhosts/ejemplo.com/httpdocs/*.php -exec grep -Hn 'function test()' {} \;
La salida de todo ello, nos muestra algo así:

 

/var/www/vhosts/ejemplo.com/httpdocs/fichero1.php:302:function test(){

/var/www/vhosts/ejemplo.com/httpdocs/fichero2.php:223:function test(){
Nos mostrará el path de cada fichero que lo contiene y la línea donde se encuentra el cadena deseada.

Related Posts