sábado

Buscar texto en ficheros linux

En ocasiones la búsqueda en linux se complica, ya no solo buscamos un fichero determinado en una ruta que no recordamos, si no que buscamos un texto dentro de un fichero cuya ruta no recordamos, una configuración que hicimos hace tiempo y no anotamos, de la que podemos decir que dentro tenia la MAC de una de las tarjetas de red...

El comando find, que cosa tan maravillosa, nos puede resolver la papeleta. Normalmente uso find para encontrar cosas y solo en alguna ocasión uso exec dentro de find para borrar algunos ficheros que resulten de una búsqueda determinada. En este caso le doy otro uso.

find / -exec grep -l texto_buscado {} \; 2>/dev/null


Desde raíz hasta el infinito y mas allá, tardará un rato, no en vano va a revisar una cantidad de ficheros bastante grande, pero lo encontrará, siempre que hayamos especificado bien la búsqueda.

Al final añado 2>/dev/null para que no informe de los errores, con lo que la búsqueda será bastante clara, solo entregará los valores validos. Con estos valores se pueden ejecutar otras ordenes dentro de un script.


A mi me resulta bastante útil, espero que a vosotros también.