On 2020-10-27 09:52, Damián Tomey Soto wrote:
El 26/10/2020 a las 12:08, Ulises Gonzalez Horta escribió:
On 2020-10-26 11:52, Damián Tomey Soto wrote:
Buenas tardes colegas, necesito de la colaboración de ustedes para
formar una expresión regular.
Tengo un archivo con varias líneas, ej:
20201026 azul,hola pepe,gato,blanco,lapiz
20201026 verde,hola pepe,negro,goma
20201026 azul,hola pepe,perro,blanco,goma
20201026 azul,hola juan,perro,blanco,lapiz
20201026 azul,hola ernesto,gato,blanco,goma
Necesito extraer las líneas que tiene la frase hola pepe y además la
palabra blanco.
Probé con grep .*hola pepe.* pero no se como excluir las que no tienen
la palabra blanco.
Gracias
egrep "hola pepe|blanco" $file
Esto te va a sacar las lines que tienen 'hola pepe' y las que tienen
'blanco'
--
Salu2, Ulinx
"En un problema con n ecuaciones
siempre habrá al menos n+1 incógnitas"
Linux user 366775
Quieres saber de Cuba o visitar Cuba, revisa mi canal Youtube (en
español) http://bit.ly/Alocubano
Ulises buenos días, gracias por contestar.
Revisando el correo me di cuenta que no lo redacté bien, yo necesito las
que tienen la frese hola pepe pero que no incluyen la palabra blanco.
El problema real es que quiero de los logs de un pfsense sacar las
líneas relacionadas con el tráfico de entrada a la interfaz WAN y luego
excluir cierto tráfico que no me interesa. Te pongo un ejemplo real,
solo voy a cambiar las IP.
* Oct 23 00:00:00 A.B.C.D filterlog:
9,,,1000000103,re1,match,block,in,4,0x0,,128,20627,0,none,17,udp,71,A.B.12.232,202.12.27.33,53879,53,51
* Oct 23 00:00:00 A.B.12.225 filterlog:
233,,,1597153005,em0,match,pass,in,4,0x0,,128,14811,0,none,17,udp,77,A.B.214.17,A.B.E.F,61830,53,57
* Oct 23 00:00:00 A.B.C.D filterlog:
228,,,1000045713,re1,match,pass,out,4,0x0,,127,14811,0,none,17,udp,77,A.B.214.17,A.B.E.F,61830,53,57
* Oct 23 00:00:02 A.B.C.D filterlog:
9,,,1000000103,re0,match,block,in,4,0xc0,,1,58443,0,none,89,ospf,64,A.B.107.25,224.0.0.5,datalength=44
* Oct 23 00:00:10 A.B.C.D filterlog:
9,,,1000000103,re0,match,block,in,4,0xc0,,1,58457,0,none,89,ospf,64,A.B.107.25,224.0.0.5,datalength=44
* Oct 26 12:50:53 A.B.C.D filterlog:
9,,,1000000103,re0,match,block,in,4,0x0,,252,18060,0,none,1,icmp,60,A.B.10.138,A.B.107.20,request,29,5537640
* Oct 26 12:55:46 A.B.C.D filterlog:
9,,,1000000103,re0,match,block,in,4,0x0,,59,1319,0,DF,6,tcp,1240,172.30.225.185,A.B.E.F,60724,465,1188,A,1757074009:1757075197,311127353,340,,nop;nop;TS
* Oct 26 19:43:16 A.B.C.D filterlog:
9,,,1000000103,re0,match,block,in,4,0x0,,252,4137,0,none,1,icmp,60,A.B.10.138,A.B.107.20,request,30,273340
el tráfico de entrada que me interesa es el que mi pf bloquea, y se
refleja con esta frase: re0,match,block,in
usando la expresión grep .*re0,match,block,in.* obtengo las líneas de la
4 a la 8 pero no me interesan las que tienen la palabra ospf que son la
4 y la 5.
usando la expresión grep .*re0,match,block,in.* | grep -v ospf entonces
me quedo con las 6, 7 y 8 que son las únicas que me interesan.
Hay alguna forma más elegante de hacer lo anterior, tal vez en una sola
expresión regular???
--
Damian Tomey Soto
Administrador de Red
CTE 10 de Octubre, Nuevitas
Tel: (32) 414702 Ext. 280
Mira, yo lo haria con dos greps para que sea mas simple y mas efectivo
... asi se entiende y funciona...
--
Salu2, Ulinx
"En un problema con n ecuaciones
siempre habrá al menos n+1 incógnitas"
Linux user 366775
Quieres saber de Cuba o visitar Cuba, revisa mi canal Youtube (en
español) http://bit.ly/Alocubano_______________________________________________
Gutl-l mailing list -- gutl-l@listas.jovenclub.cu
To unsubscribe send an email to gutl-l-le...@listas.jovenclub.cu