]> gitweb.pimeys.fr Git - scripts-20-100.git/blobdiff - grepmac.sh
typo
[scripts-20-100.git] / grepmac.sh
index 72edd41d0b7638322e1332883c5874fa0da4b5dd..2f8c051ba421b1a6376fa106a5e3139349bd291f 100755 (executable)
@@ -2,34 +2,49 @@
 
 # Pour trouver la MAC (Wifi ou filaire) d'un adhérent dans les logs idoines
 
-path=/var/log/freeradius/
-# On ne va pas chercher au même endroit en fonction du serveur
+filename=global
+
+# On râle si on n'est pas sur le bon serveur
 case `hostname` in
-    gordon|eap)
-        filename=radius
-    ;;
-    radius|sable)
-        filename=radius_auth
+    thot)
     ;;
     *)
-        echo "Are you kidding me ?"
-        exit 1
+        echo -e "\e[0;31mPas sur thot, risque de ne pas marcher.\e[0m"
+    ;;
+esac
+
+case $1 in
+    --filaire)
+        path=/var/log/filaire/
     ;;
+    --wifi)
+        path=/var/log/wifi/
+    ;;
+    *)
+        echo "Préciser --filaire ou --wifi en premier paramètre."
 esac
 
-# On enlève les ":" de la MAC
-mac=${1//:/.}
+# On remplace les ":" de la MAC par des "."
+# cela permet de parser aa:aa:aa:aa:aa:aa et AA-AA-AA-AA-AA-AA
+mac1=${2//:/.}
+
+# On prévoit aussi de parser le format AAAAAAAAAAAA (certains logs des switchs (tags de VLAN))
+mac2=${2//:/}
+
+# Format AAAAAA-AAAAAA (d'autres logs des switchs)
+mac3="${mac2:0:6}-${mac2:6:6}"
+
+# On merge
+mac="(${mac1}|${mac2}|${mac3})"
 
 # .log et .log.1 ne sont pas compressés
-grep --color -i $mac $path$filename.log
-echo -n ".1 ?"
-read -r
-grep --color -i $mac $path$filename.log.1
+echo grep -E --color -i $mac $path$filename.log
+grep -E --color -i $mac $path$filename.log
 
 # Les suivants sont compressés
-for i in `seq 2 52`
+for i in `seq 1 364`
 do
     echo -n ".$i ?"
     read -r
-    zgrep --color -i $mac $path$filename.log.$i.gz
+    zgrep -E --color -i $mac $path$filename.log.$i.gz
 done