Usando grep para la búsqueda de texto

0

Necesito buscar en el sistema de archivos cadenas de texto que coincidan con alguna cadena. Estoy tratando de llegar a donde se usan los comandos, es decir, en qué archivos se llaman o se usan. Necesito encontrar todos los archivos donde se usa cualquiera de este texto: shareEventHandler.phpo repToolBroker.phpo loginProctor.phpo messageBroker.phpo emailBroker.php. ¿Cómo puedo hacer eso usando grep o find? ¿Alguien me puede ayudar?

ReynierPM
fuente

Respuestas:

2

Buscar se usa para nombres de archivos. Grep se usa para buscar dentro de un archivo o archivos. Entonces, para esto, usaremos grep.

Desde el directorio raíz en el que desea buscar, ejecute:

grep -r 'shareEventHandler.php\|repToolBroker.php\|loginProctor.php\|messageBroker.php\|emailBroker.php' .
  • grep - aplicación de búsqueda
  • -r búsqueda recursiva desde este directorio hacia abajo
  • Use "\ |" entre términos de búsqueda
  • "." se usa para indicar el directorio actual

Una alternativa sería usar RegEx:

grep -rE '((shareEventHandler)|repToolBroker|loginProctor|messageBroker|emailBroker)(\.php)' .
  • -E Bandera RegEx
BryanC
fuente
He intentado /obtener esta salida y tengo que presionar CTRL + C para detener la ejecución del comando. Con el segundo, obtenga la misma salida que antes
ReynierPM
Eso es normal si está ejecutando un grep o encuentra desde /. Puede usar sudo para evitar los errores, pero los errores en sí mismos no detendrán la búsqueda.
BryanC
Soy usuario root. ¿Necesito usar sudo?
ReynierPM
Sí, incluso como root necesitarás usar sudo para evitar esos errores. Pero nuevamente, los errores no van a detener su búsqueda. Simplemente llena tu pantalla con resultados extra de basura.
BryanC