Re: Kleines Problem mit Shellscript

From: Florian Zumbiehl (florz@gmx.de)
Date: Mon Mar 11 2002 - 17:46:31 CET


Hallo Christian!

> > hinbekomme, eine "for"-Schleife oder eine "while"-Schleife um das Skript
> > herumzulegen, damit es auch jede gewünschte Nummer abarbeitet.
> > Im Anhang findet Ihr das Skript. Vielleicht kann mir ja einer das "Brett
> > vom Kopf " nehmen.

Ich wuerd's etwa so bauen (solange nur das letzte Byte der IP gezaehlt
werden soll):

for i in `seq "$1" "$2"`; do
        ip="$kreis.$i"
        # ...
done

Wenn es mal wirklich viele IPs werden sollten, vielleicht besser so:

i=`perl '-neuse Socket;print(unpack("N",inet_aton("'$kreis$1'")))'`
stop=`perl '-neuse Socket;print(unpack("N",inet_aton("'$kreis$2'")))'`
while [ "$i" -le "$stop" ]; do
        ip=`perl '-neuse Socket;print(inet_ntoa(pack("N",'$i')))'`
        i=$((i+1))
done

Vielleicht wuerde ich dann aber auch eher in Richtung einer
komplett-Perl-Loesung tendieren, anstatt so einen haufen Prozesse zu
forken und die Logdatei zigmal durchzurackern 8-)

Gruss, Florian



This archive was generated by hypermail 2.1.3 : Mon Mar 11 2002 - 17:45:51 CET