Pique 13: Cómo buscar una cadena de texto dentro de "n" cantidad de archivos en una carpeta.

· 1 min de lectura
Pique 13: Cómo buscar una cadena de texto dentro de "n" cantidad de archivos en una carpeta.


Esto es algo que yo no sabía y me sorprendió al encontrarlo. De la siguiente manera, podés buscar una palabra o cadena de texto entre la cantidad de archivos que haya en un directorio.

Hoy, durante un cuasi incidente en el trabajo, necesitaba buscar una linea de error en unos logs de JBOSS. Dentro de esta carpeta logs, hay muchos, cada uno de ellos, loguea diferentes partes del flujo de trabajo que maneja la aplicación. Buscar uno por uno no era una opción, así que me puse a buscar un poco en Google y encontré que puedo buscar una cadena de texto entre muchos archivos dentro de una carpeta. ¿Cómo? Así, con el querido y nunca bien ponderado (?) comando "grep".

grep -r -i «cadena-de-texto» /carpeta/

En mi caso, les muestro, como resultaría, si quiero buscar la palabra "Playbook" dentro de la carpeta Ansible en mi "home".

grep -r -i playbook /Users/nacho/ansible

El resultado en mi caso es así:

/Users/nacho/ansible/docker/ansible-playbooks/docker_ubuntu1804/1:# DO Community Playbooks: Docker
/Users/nacho/ansible/docker/ansible-playbooks/docker_ubuntu1804/readme.md:This playbook will install Docker an Ubuntu 18.04 machine, as explained in the guide on
/Users/nacho/ansible/docker/ansible-playbooks/docker_ubuntu1804/readme.md:## Running this Playbook
/Users/nacho/ansible/docker/ansible-playbooks/docker_ubuntu1804/readme.md:### 1. Obtain the playbook
/Users/nacho/ansible/docker/ansible-playbooks/docker_ubuntu1804/readme.md:git clone https://github.com/do-community/ansible-playbooks.git
/Users/nacho/ansible/docker/ansible-playbooks/docker_ubuntu1804/readme.md:cd ansible-playbooks/docker_ubuntu1804
/Users/nacho/ansible/docker/ansible-playbooks/docker_ubuntu1804/readme.md:### 3. Run the Playbook
/Users/nacho/ansible/docker/ansible-playbooks/docker_ubuntu1804/readme.md:ansible-playbook -l [target] -i [inventory file] -u [remote user] playbook.yml

Fijense que va a buscar la palabra "playbook" y la encuentra dentro de esos "readme.md".

Una maravilla. ¿La conocías? ¿Qué otra forma "loca" de buscar en la terminal conoces?


baehost