Am 2005-03-15 23:29:32, schrieb Jan Kohnert: > [ganz kompliziertes Zeug] ;) :-) > Warum läßt du dein Script nicht ein Tempfile mit der PID des Scriptes > anlegen > und nach erfolgreichem Abschluß wieder löschen? Weil Du auch mit Programm abstürzen rechnen mußt und da wird die PID dann bei Scripten nicht weggeräumt Gut, ich mache auch: __( '/home/michelle.konzack/devel/bash/pid.template' )________________ / | #!/bin/bash | | NEWPID=$$ | PROGNAME=`basename $0` | | if [ ! -f /var/run/$PROGNAME.pid ] ; then | OLDPID=`cat /var/run/$PROGNAME.pid` | pstree -pan |grep ",$OLDPID)" |grep "$PROGNAME" >/dev/null 2>&1 | if [ $? = "0" ] ; then | exit 0 | fi | fi | echo $NEWPID >/var/run/$PROGNAME.pid | | | # Hier das eigentliche | # Programm einfügen. | | | rm -f /var/run/$PROGNAME.pid \______________________________________________________________________ > Da mußt du nur prüfen ob die Datei existiert (einfach) und ob die > PID zu einem > laufenden Programm gehört (auch einfach). Da PIDs nur aufsteigend > vergeben > werden, mußt du nichtmal dem Prozeßnamen der PID rausfinden, ließe Naja, ich habe teilweise mehr als 1000 Prozesse pro sekunde... Ich überprüfe lieber den $PROGRAMNAMEN mit... > sich aber > auch recht einfach realisieren. Desweiteren kannst du sogar PIDfiles > mit > Startzeiten anlegen (da kann man schauen, ob das Script deutlich zu > lange > läuft {vielleicht ist es ja steckengeblieben}) und und und... :-) > MfG Jan Greetings Michelle -- Linux-User #280138 with the Linux Counter, http://counter.li.org/ Michelle Konzack Apt. 917 ICQ #328449886 50, rue de Soultz MSM LinuxMichi 0033/3/88452356 67100 Strasbourg/France IRC #Debian (irc.icq.com)
Attachment:
signature.pgp
Description: Digital signature