Am 2006-03-27 16:16:16, schrieb Peter:
> Erstmal vielen Dank für eure Hilfe.
> 
> Ich hab jedoch noch ein Problem mit der shell Programmierung.
> Bei dem Server werden zwei Prozesse gestartet.
> hlds_run wird von meinem Script gestartet,
> hlds_i686 wird durch hlds_run gestartet.
> 
> Um den Server zu stoppen, versuche ich nun die PID von hlds_i686 über
> /bin/ps aux | awk '/hlds_i686 -game dod \+maxplayers 21/ {print $2}'
> zu ermitteln

Im script machste ein:

----8<----------------------------------------------------------
#!/bin/bash

# Definieren des auszuführenden Befehls
COMMAND=hdls_i686

# ermitteln der aktuellen seriellen Zeit seit 1.1.1970
let CTIME=`date +%s`

# Ausführen des Befehls und in den hintergrund schicken
$COMMAND &

# Nun suchen wie alle Prozesse die den
# den namen unseres Befehls haben
(ps -f -C $COMMAND |grep "$COMMAND" |tr -s " ") |
while read VAL ; do

  # Wenn mehrere da sind, arbeiten wir
  # sie einem nach dem anderen ab
  let STIME=`date --date=\`echo "$VAL" |cut -d " " -f5` +%s`+20

  # nun vergleichen wir, ob der zu überprüfenden
  # Prozess nach unserer CTIME gestartet wurde
  if [ $STIME -gt $CTIME ] ; then
  
    # wenn ja, schreiben wir ne PID
    echo "$VAL" |cut -d " " -f2 >/games/run/$COMMAND.pid
    
    # und beenden mit exit
    exit 0

  fi
done

exit 0

----8<----------------------------------------------------------


Ähm, was ist das:

> begin 666 dodhid1.dat
> M(R$O8FEN+V)A<[EMAIL PROTECTED]"B,@1&%Y(&]F($1E9F5A="!,:6YU>"!397)V97(L(%-E

<snip>

> begin 666 dod1.dat
> M([EMAIL PROTECTED])I;B]B87-H#0HC#0HC(R,@0D5'[EMAIL 
> PROTECTED])5"!)3D9/#0HC(%!R;W9I

???

Greetings
    Michelle Konzack


-- 
Linux-User #280138 with the Linux Counter, http://counter.li.org/
##################### Debian GNU/Linux Consultant #####################
Michelle Konzack   Apt. 917                  ICQ #328449886
                   50, rue de Soultz         MSM LinuxMichi
0033/3/88452356    67100 Strasbourg/France   IRC #Debian (irc.icq.com)


-- 
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)

Antwort per Email an