Estoy tratando de usar grep con una expresión regular para encontrar líneas en un archivo que coincidan con 1 de 2 cadenas posibles. Aquí está mi grep:
$ grep "^ID.*(ETS|FBS)" my_file.txt
El grep anterior no devuelve resultados. Sin embargo, si ejecuto cualquiera de los dos:
$ grep "^ID.*ETS" my_file.txt
o
$ grep "^ID.*FBS" my_file.txt
Yo coincido con líneas específicas. ¿Por qué mi OR regex no coincide? Gracias de antemano por la ayuda!
grep
regular-expression
Dr. Bunsen
fuente
fuente
egrep
lugar degrep -E
.Si desea usar varias ramas (el
|
asor
), para ser más compatible, es mejor decir explícitamente que quiere usar "RE moderno" alias. ANTES DE.Para hacerlo, use grep -E :
Para obtener más información sobre RE, ERE y toda la historia "moderna" de ER, vea
man 7 regex
.Alternativamente, puede usar en
egrep
lugar degrep
, pero como puede leer enman grep
:(...)
fuente