(7 respuestas)
Cerrado hace 4 años.
Varias preguntas son similares a esta, pero no he encontrado una solución que funcione cuando quiero buscar un patrón en varias líneas. Lo siguiente
sed -n '/First string/,/Second string/ p' my.file
imprimirá todo ocurrencias del patrón coincidente, pero me gustaría solo la primera ocurrencia. Estoy usando GNU sed.
Respuesta aceptada:
Utilice q
para salir explícitamente cuando se alcanza el patrón final.
En base GNU:
$ cat foo
foo
START
bar
END
blah
START another
$ sed -n '/START/,/END/p; /END/q' foo
START
bar
END
awk
tal vez haría más fácil no repetir el patrón final:
$ awk '/START/{p=1} p; /END/{exit}' foo
START
bar
END