awk: visualización de expresiones regulares emparejadas (multilínea)

Tengo un archivo que se ve así:

SF:/home/developer/project/test/resources/somefile.js
DA:1,2
DA:3,2
end_of_record
SF:/home/developer/project/src/resources/otherfile.js
DA:9,2
DA:15,2
DA:22,2
end_of_record

...some more SF:/home/xxx and end_of_record lines...

El archivo consta de bloques que comienzan conSF: ... y terminando conend_of_record. Tenga en cuenta que el recuento de las líneas entre (DA:x,x) puede ser diferente. Quiero imprimir todos los bloques que tienen la "prueba" de cadena en su primera línea (como "SF: / home / developer /prueba/ resources / ... "aquí). Para este ejemplo, mi salida deseada sería:

SF:/home/developer/project/test/resources/somefile.js
DA:1,2
DA:3,2
end_of_record

Quiero hacer esto en unaLinux ambiente.

Mi primer intento fue hacer esto usando el comando "sed", pero después de algunas investigaciones pareció que "awk" es una herramienta más adecuada para realizar operaciones de varias líneas.

Usando awk y Regex, este es el comando que tengo hasta ahora:

awk '/SF[:\/a-zA-Z0-9]*test[\/A-Za-z0-9.,:\n]*end_of_record/ {print}' FS="\n" RS="" examplefile

Pero da salida a la totalidadexamplefile, no solo los bloques que contienen "test" en la primera línea. No estoy seguro si mi Regex está mal o si me falta algo en miawk llamada.

¿Cómo puedo obtener solo el bloque con "test" en la primera línea?