Com extreure les adreces IP d'un arxiu ?

com extreure les adreces IP d'un arxiu

He creat aquest script per saber com extreure les adreces IP d'un arxiu de log.

L'script utilitza com a primer argument l'arxiu log del que volem extreure les IPs i com a segon argument l'arxiu on volem posar les ips soltes.
Si no li indiques el fitxer de sortida crea en el directori on aquestes un arxiu anomenat listaips.

L'script per extreure les adreces IP d'un arxiu

#!/bin/bash
# script programat per Ignacio Alba
# http://Aplicacionesysistemas.com
# 
# si només vols extreure ip d'un arxiu :
#cat origen | -oi adherència "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|classe >> destí

#ayuda per si no es posen paràmetres
if [ -des $1 ];llavors
    fet -i "Has de dir-me quin és l'arxiu d'origen i destinació amb la sintaxi"
    ressò ""
    echo-e "\i[91m. / extraeip origen destí  i[0m "
    ressò ""
    echo-e "si no poses destí crec l'arxiu  i[91mlistaips  i[0m en el directori on et enchemtras"
sortida
més
# readlink ens mostra el camí complet del fitxer.
origen = $(readlink -f $1)
ruta = $(pwd)
# variable en funció de si es posa o no segon paràmetre
if [ -des $2 ];llavors
    gat $1 | -oi adherència "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|classe >> listaips
    fet -i " \i[92mArchivo d'origen          :    \i[91m $ origen  i[0m "
    echo-e " \i[92mArchivo destí llistat IPs:    \i[91m$ruta/listaipse[0m "     
més
    destí = $(readlink -f $2)
    gat $1 | -oi adherència "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}"|classe >> $2
    echo-e " \i[92mArchivo d'origen          :    \i[91m $ origen  i[0m "
    echo-e " \i[92mArchivo destí llistat IPs:    \i[91$ M  destí i[0m " 
ser
ser
# Missatge de comiat
fet ""
ressò ""
1s del somni;echo-e "\i[92MNO oblidis visitar-nos a  i[0m" 

1s del somni;echo-e "            \i[42m  i[97m  i[1mhttps://aplicacionesysistemas.com  i[0m"

Com extreure les adreces IP d'un arxiu

1) Creem un nou fitxer de text anomenat extraeips.

extraeips nano

2) Enganxem el contingut de l'script (Ctrl Maj V) guardem amb Ctrl x posem S per poder guardar.

3) Donem permisos d'execució a l'script per a l'usuari (gràcies Héctor Herrera)

chmod u   x extraeips

4) Executem el script

./extraeips origen destí

Exemple

./extraeips /var/log/auth.log / home / aplicacionesysistemas / Documents / listaips

o també

./extraeips origen

Exemple

./extraeips /var/log/auth.log

En aquest cas ens creés el llistat d'adreces IP en el directori on ens trobem.

Si se t'ocorre alguna manera de millorar l'script o afegir noves funcionalitats explica'ns com ho faries

 

Per crear aquest script he utilitzat informació de les següents pàgines.

http://www.forosdelweb.com/f41/sed-extraer-ips-archivo-log-517127/
http://es.kioskea.net/faq/bash-372

Si us ha agradat o resultat útil, Pot donar la compartir +1 a les xarxes socials, al meu m'anima molt a seguir escrivint.


Sobre

Tècnic microinformàtic i formador per a l'ocupació. Amant de les noves tecnologies. Administrador de GNU / Linux i Windows.

Un comentari:

  1. Ha estat molt útil. Darrerament estic patint intents d'atac de força bruta i amb aquest script, una mica de cron i fail2ban estic parant com puc als mals.
    Gràcies per l'aportació i endavant amb el bé treball +1

Deixa un comentari

La seva adreça de correu electrònica no es publicarà. Els camps obligatoris estan marcats *