Encuentre todos los archivos y use el resultado en el patrón de búsqueda grep

Encuentre todos los archivos y use el resultado en el patrón de búsqueda grep

Encontré un ejemplo que usa una combinación de find y xarg o exec para buscar un patrón específico a partir del resultado, ver enlaceaquí.
Sin embargo, me gustaría utilizar el resultado del comando buscar y usarlo como patrón de búsqueda para grep. Algo parecido al comando siguiente, pero no estoy seguro de cómo construirlo.

find . -name "*.cgi" -printf '%f\n' | cut -d. -f1 | xarg grep 'find_result' *.html

Respuesta1

Suponiendo GNU grepy suponiendo que sus nombres de archivos no tengan nuevas líneas incrustadas:

find . -name '*.cgi' -printf '%f\n' | cut -d. -f1 | sort -u | fgrep -f - *.html

Respuesta2

No es necesario xargsaquí, simplemente puede grepleer la lista de patrones desde la entrada estándar:

con GNU encontrar:

find . -name '*cgi' -printf '%f\n' | grep -f - *html

de lo contrario:

find . -name '*cgi' | cut -f2- -d/ | grep -f - *html

información relacionada