#! /bin/sh

#
# Variablen festlegen
#

# IP-Kreis
# Hier den IP-Kreis der jeweiligen Betriebsstelle eintragen
# Achtung: die letzte Ziffer wird automatisch gesetzt!
kreis=10.53.11

# Datenverzeichnis
# Hier das Verzeichnis angeben, in dem die jeweiligen Logdateien
# abgelegt werden sollen.
verz=/var/www/html/statistik/detail

# Start- und End-IPadresse
# Die Start- und Endnummern wird an der Shell übergeben.
# Beispiel: "./webiplog.sh 100 150" für Adressen
# 	    10.53.11.100 bis 10.53.11.150
start="$kreis".$1
stop="$kreis".$2

# Datei in der Squid die Log-Daten schreibt inkl. Pfad
# Dieser Eintrag kann bei Bedarf ebenfalls geändert werden,
# sollte aber eigentlich bei allen Bst. gleich sein.
squidlog=/var/log/squid/access.log

#
# Testen und anlegen der Logdateien für die jeweiligen IPadressen
#
for i in "$start" ; do
    # existiert das Verzeichnis $verz/$i?
	if [ ! -d "$verz"/"$i" ]; then
		# wenn nicht, anlegen
		mkdir "$verz"/"$i"
	fi
	
	# existiert die Datei $verz/$i/$datei.log?
	if [ ! -f "$verz"/"$i"/"$i".log ]; then
		# wenn nicht anlegen
		touch "$verz"/"$i"/"$i".log
	fi

    # jetzt die jeweiligen IP-Adressen extrahieren
	# Test ob das Ende des IP-Kreises (255)erreicht ist
	if [ "$i" = "$stop" ]; then
	    echo "Fertig!"
	    echo "Logdaten von "$start" bis "$stop" extrahiert" && exit 0
	fi

	# ist die Logdatei schon vorhanden?
	if [ -f "$verz"/"$i"/"$i".log ]; then
	    # dann neu erfasste Daten anfügen
	    grep "$i" "$squidlog" >> "$verz"/"$i"/"$i".log
	    else
	    # sonst datei beim extrahieren anlegen
	    grep "$i" "$squidlog" > "$verz"/"$i"/"$i".log
	fi

    # jetzt webalizer auf die Logdateien loslassen
    webalizer -p -Y -T -t $i -o "$verz"/"$i" "$verz"/"$i"/"$i".log

    # überprüfung ob das Ende des Kreises erreicht ist
# irgenwie klappt es noch nicht mit dem Durchlaufen der Schleife von
# $1 bis einschl. $2!!!
# 
#	if [ "$i" = "$stop" ]; then 
#	    echo "Das Ende des IP-Kreises wurde erreicht" && exit 0
#	    #else	start="$start"+1
#	fi

done
