Linux GREP / SED [xargs] encuentra el patrón y el número de línea en los archivos y elimina con SED

Mi situación es:

Tengo una cadena de texto muy larga, que contiene caracteres especiales, que aparece en una línea larga en varios archivos. Los archivos que contienen la cadena están en todo el sistema de archivos (Linux). La cadena puede estar en varios números de línea en los archivos donde ocurre, pero ocurre una vez por archivo. Sin embargo, la cadena contiene un patrón específico en el que puedo teclear para identificar toda la cadena.

Sé cómo encontrar los nombres de los archivos que contienen la cadena tecleando el 'prefijo' de la cadena usando GREP -lir mystringprefix / path.

Sé cómo determinar el número de línea de la cadena en el archivo usando GREP y SED usando grep -n "prefix" file.name | sed -n “s / ^ ([0-9]) [:]./ \ 1 / p ”.

Sé cómo usar SED para eliminar en su lugar la línea en el archivo que contiene la cadena de interés usando sed -i xd / ruta / archivo (x es el número de línea que se eliminará).

Mi pregunta es ¿cómo puedo juntar todo esto para determinar qué archivos contienen el patrón, pasar el nombre a GREP para determinar el número de línea en el archivo, luego pasar el nombre y el número de línea a SED para eliminar la línea?

Necesito hacer esto de manera tal que comience en una cierta ubicación en el sistema de archivos y luego haga que busque / elimine de forma recursiva.

Gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta