ejemplos - sed bash
Usar sed/awk para imprimir líneas con un patrón coincidente O con otro patrón coincidente (4)
¿Por qué no quieres usar grep?
grep -e ''pattern1'' -e ''pattern2''
Necesito imprimir líneas en un archivo que coincida con un patrón O con un patrón diferente usando awk o sed . Siento que esta es una tarea fácil pero parece que no puedo encontrar una respuesta. ¿Algunas ideas?
La forma POSIX
awk ''/pattern1/ || /pattern2/{print}''
Editar
Para ser justos, me gusta más la forma de lhf a través de /pattern1|pattern2/
ya que requiere menos escritura para el mismo resultado. Sin embargo, debo señalar que esta plantilla no se puede usar para operaciones lógicas AND , para eso necesita usar mi plantilla que es /pattern1/ && /pattern2/
Utilizar:
sed -nr ''/patt1|patt2/p''
donde patt1
y patt2
son los patrones. Si quieres que coincidan con toda la línea, usa:
sed -nr ''/^(patt1|patt2)$/p''
Puedes soltar la -r
y agregar escapes:
sed -n ''/^/(patt1/|patt2/)$/p''
Para el cumplimiento de POSIX.
awk ''/PATT1|PATT2/ { print }''