1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
#Vérifie qu'il y a bien un paramètre
if [ $# -ne 1 ]
then
echo il faut exactement un paramètre!
exit 1
fi
# Vérifier que le paramètre correspond bien à une adresse IP de type 192.168.0.0
#ou un nom (dans le cas ou lui aurait donné un nom dans le fichier hosts)
if [ $1 != 192.168.[0-9][0-9]?[0-9]?.[0-9][0-9]?[0-9]? ] || [ $1 != [aA-zZ]]
then
echo le premier paramère doit-être une adresse IP ou une chaîne de caractère
exit 1
fi
#execution de la commande Traceroute
'./Traceroute $1' > fichier_TR
#Récupération des informations souhaitées après exécution de la commande Traceroute
#Format de la réponse Traceroute:
#1 33 ms 32 ms 33 ms raspail-2-81-57-234-254.fbx.proxad.net [81.57.234.254]
#2 33 ms 33 ms 33 ms vlq-6k-2-a5.routers.proxad.net [213.228.4.254]
#Parcourt chaque ligne du fichier. Pour chaque ligne, awk recherche des données séparées
#entre elles par le champ indiqué dans l'option -F (ici un espace) et les place dans des
#arguments $1 , $2...$n
gawk -F" " $1 fichier_TR > fichier_ID # On récupère toute la colonne 1
gawk -F" " $8 fichier_TR > fichier_DNS # On récupère toute la colonne 8 (adresse)
gawk -F" " $9 fichier_TR > fichier_IP # On récupère toute la dernière colonne (adresse IP) |
Partager