A menudo queremos saber que archivos contienen una cadena de texto. Si queremos hacer esto desde la línea de comandos:
find . -name '*.php' | xargs grep 'cadenaabuscar' -l
Este comando busca todos los archivos con extensión ‘.php’ en el directorio actual y sus subdirectorios, pasa la salida a grep
y éste nos muestra los nombres de los archivos que contienen la cadena buscada.
Esto funciona en Mac OS X y en cualquier sistema Unix.
¿Éste código se pone en la aplicación Terminal?
¿Y como se direcciona a una carpeta que tengas en el escritorio?
Muchas gracias.
Hola Sergi,
Si, como la mayoría de comandos en sistemas Unix, se puede redireccionar la salida a un archivo, es decir, siguiendo con el ejemplo, podríamos hacer esto:
find . -name ‘*.php’ | xargs grep ‘cadenaabuscar’ -l > lista_archivos.txt
En el archivo lista_archivos.txt se mostrará la salida del comando, en este caso los nombres de archivo que tengan ‘cadenaabuscar’