LinuxParty
Hoy me vi en la tarea de buscar una función de WordPress, pero como hacer para no tener que estar revisando cada archivo hasta encontrarla?
Si bien no existe un comando directo (aplicaciones no se) en linux para buscar cadenas de texto, lo podemos hacer mediante los comandos find, xargs y grep de la siguiente forma:
$ find /ruta/donde/buscar/ -name * | xargs grep "cadena a buscar"
Aunque la sintaxis es bastante clara y podemos ver el manual de cada comando en consola (con man comando) veamos es es lo que quiere decir esto:
- find realiza una lista de los ficheros de la ruta especificada. En este caso va a listar todos, pero si queremos buscar solo archivos de cierta extensión, solo hay que cambiar el asterisco (*) por el tipo de archivo deseado, por ejemplo *.php.
- | pasa la salida del comando anterior al siguiente.
- xargs toma la lista que resulta de find y la va pasando como llamadas consecutivas a grep.
- Y por ultimo, grep busca "cadena a buscar" dentro de los ficheros que le pasa xargs, buscados a su vez por find.
Si te interesan conocer las Expresiones Regulares en Linux, mira nuestro mini-tutorial.

-
Linux
- Trabajando y como funciona el Menú GRUB.
- Linux en el AIRBUS 380
- Cómo montar un sistema de vigilancia casero en Linux
- Construye inteligentemente, Scripts que no requieran toda tu atención.
- Migrando de Windows a Linux.
- Top de los 25 comandos mas útiles para el administrador novato
- Enemigo de Linux está al borde de la quiebra
- La compañía aérea Spainair migra a Linux
- La crisis de la identidad de Linux
- Linux descargará tus drivers automáticamente
- The Perfect Desktop - Ubuntu Studio 7.10
- Driver NTFS-3G 1.10
Comentarios
A propósito, también funciona esto (publicado también en linuxparty):
/article/35-linux/7828-buscar-un-texto-contenido-dentro-de-un-fichero-en-linux