Buscar texto en ficheros recursivamente

El comando grep busca/muestra las ocurrencias encontradas en uno o varios ficheros de texto.

Usando el comando grep puedes realizar una búsqueda de forma recursiva en un directorio y mostrar que ficheros tiene la ocurrencia que buscas.

Esto es bastante útil si eres programador, tienes varios proyectos y tienes que buscar algo que no recuerdas donde está.

Por ejemplo, imagina que tienes un directorio con varios ficheros y subdirectorios con mas ficheros, y quieres buscar el texto “vertical-align” de forma recursiva e ignorando mayúsculas:

grep -Ri "vertical-align"

Buscar texto en ficheros recursivamente

 

Si lo único que quieres ver es el nombre del fichero puedes usar una tubería (pipe) y cortar usando como delimitador “:” y obtener tan solo la primera columna.

grep -Ri 'class' | cut -d ":" -f1

Buscar texto en ficheros recursivamente obteniendo solo el nombre del fichero

 

Si además quieres que no salgan repetidos aquellos ficheros que tienen mas de una ocurrencia puedes usar “uniq” para eliminar duplicados o “sort -u” para ordenar y además eliminar duplicados.

grep -Ri 'include' | cut -d ":" -f1 | sort -u
grep -Ri 'include' | cut -d ":" -f1 |uniq

Buscar texto recursivamente sin repetidos

Anuncios

Por cada comentario que haces, Dios salva un gatito

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s