Buscar textos dentro de archivos en unix
Grep es sin lugar a dudas una de las utilidades más potentes que tiene Unix/Linux. Su nombre deriva de un comando en el editor de texto ed que tiene la siguiente forma: g/re/p y significa «hacer una búsqueda global para las líneas que encajen con la expresión regular (regular expression en inglés), e imprimirlas».
Dentro de los múltiples usos que tiene, está el de poder buscar cadenas de texto o dentro de 1 o varios archivos, es supremamente útil y fácil de usar. Basta con pasar como argumento la cadena de texto o la expresión regular, de la siguiente manera:
Buscar palabra dentro de 1 fichero
Con la siguiente expresión buscaremos en la carpeta Documents dentro de todos los ficheros .PHP la palabra Ja-login.
grep Ja-login /home/Angelfire/Documents/*.php
Buscar una frase dentro de una carpeta
Cuando buscamos una frase debemos poner el texto dentro de comillas dobles, la siguiente expresión busca dentro de todos los ficheros sin importar su extensión. Y lo hará de manera recursiva.
grep -r "Ja-login main" /home/Angelfire/Documents/*
Buscar una palabra o frase recursivamente sin hacer distinción entre mayúsculas y minúsculas…
grep -ir "Ja-login main" /home/Angelfire/Documents/*
Espero que les sea de utilidad, a mi en lo personal me ha salvado de sentarme horas enteras a buscar manualmente.
