Page 1 of 1
kennt sich jemand mit bash.programmierung aus ?
Posted: Tue 14 Sep, 2004 11:01 am
by random
Folgendes Problem:
Ein kleines Proggie soll einen host mit IP bei dyndns.org 5 mal anpingen und das ergebnis in eine log schreiben.
Danach eine sekunde warten und wieder ping ...
und das als endlosschleife ...
Weiss jemand wie man das umsetzt ?
Greetz,
medra
Posted: Tue 14 Sep, 2004 12:15 pm
by sanaia
Hallo
folgendes sollte gehen:
ping -c 5 > logfile
sleep 60
exec $0
nachteil: manche systeme kommen mit endlosen rekursiv aufrufen nicht klar und brechen irgendwann mit einem segfault ab.
Zweiteinfachste und stabilere lösung: ein kleines C-programm, welches das auszuführende script via system() call startet.
Posted: Tue 14 Sep, 2004 4:28 pm
by juk
sanaia wrote:Hallo
folgendes sollte gehen:
ping -c 5 > logfile
sleep 60
exec $0
nachteil: manche systeme kommen mit endlosen rekursiv aufrufen nicht klar und brechen irgendwann mit einem segfault ab.
Zweiteinfachste und stabilere lösung: ein kleines C-programm, welches das auszuführende script via system() call startet.
Das segfaultet dir mit ziemlicher sicherheit frueher oder spaeter!
Besser:
until [1=1] ;
do
ping -c 5 192.168.1.1 > logfile
sleep 60
done
Das ist eine endlosschleife da hoffentlich in diesem universum die bedingung 1=1 immer erfuellt sein wird

Posted: Tue 14 Sep, 2004 11:42 pm
by random
vielen Dank leute.
Es geht um die Probehalber Client-Überwachung eines Bekannten, der wohl trotz Abmelden am Router ständig im Inet ist, so meint das zumindestens die hohe Rechnung für DSL

Zum Glück hab ich ne Flat *lol*
Prinzipiell läufts, nur bekomm ich jedesmal die Fehlermeldung:
line 2: [1=1]: command not found
Greetz,
medra
Posted: Wed 15 Sep, 2004 7:14 am
by floh
Such dir mal die Software Pingplotter. Die kann dir alles grafisch aufzeichnen. Mit Zeit usw.
Posted: Wed 15 Sep, 2004 9:19 am
by juk
Medra wrote:
Prinzipiell läufts, nur bekomm ich jedesmal die Fehlermeldung:
line 2: [1=1]: command not found
Hallo,
da muss ein ; hin kein :
Schau noch einmal genau hin...
mfg
JUK