El 4/12/18 a las 4:06, Rick Gutierrez escribió:
El sáb., 1 dic. 2018 a las 10:21, Eduardo (<edua...@eduardors.net>) escribió:
Es bastante sencillo, sólo tines que extraer el número de veces y la ip,
el resto lo despreciamos.
Por ejemplo el fichero prueba.txt contiene:

[8] logins from IP 132.245.51.221 []
[3] logins from IP 152.231.32.255 []
[8] logins from IP 152.231.32.254 []
[3] logins from IP 152.231.32.253 []
[11] logins from IP 152.231.32.252 []
[7] logins from IP 152.231.32.251 []
[3] logins from IP 152.231.32.250 []

La extracción con sed que obtiene el número de veces y la ip y se lanza
a un blucle que lee esos dos valores, luego sólo un condicional:

sed -n -e 's/\[\([0-9]\+\)\] logins from IP \([0-9.]\+\) .*/\1 \2/p'
prueba.txt | while read n ip; do
[ $n -ge 8 ] && echo $ip
done

la salida es:

132.245.51.221
152.231.32.254
152.231.32.252
Hola Eduardo , intente correr el filtro , pero no me jala ....

Es posible que si sólo copiaste el filtro no funcione porque el fichero que tienes no es exactamente como mi ejemplo, deberás adaptarlo para que case o deberías publicar un fichero.

sldss


--
Eduardo

Responder a