diff options
| author | Alexander Barton <alex@barton.de> | 2003-08-22 11:31:18 +0000 |
|---|---|---|
| committer | Alexander Barton <alex@barton.de> | 2003-08-22 11:31:18 +0000 |
| commit | 1ed708ef39f41436797754829fd574f34f8a3a71 (patch) | |
| tree | 4fa312316e29bab3f19250bcbe2e7ba58ebf05fe /src/testsuite/getpid.sh | |
| parent | 5e4124d38df21bb0408b67be071a0d6eddbe0233 (diff) | |
| download | ngircd-1ed708ef39f41436797754829fd574f34f8a3a71.tar.gz ngircd-1ed708ef39f41436797754829fd574f34f8a3a71.zip | |
Enhanced testsuite, should run under GNU/Hurd now.
Diffstat (limited to 'src/testsuite/getpid.sh')
| -rwxr-xr-x | src/testsuite/getpid.sh | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/src/testsuite/getpid.sh b/src/testsuite/getpid.sh index 57d59625..17d71749 100755 --- a/src/testsuite/getpid.sh +++ b/src/testsuite/getpid.sh @@ -1,28 +1,35 @@ #!/bin/sh # ngIRCd Test Suite -# $Id: getpid.sh,v 1.3 2003/04/22 19:27:50 alex Exp $ +# $Id: getpid.sh,v 1.4 2003/08/22 11:31:18 alex Exp $ -# wurde ein Name uebergeben? +# did we get a name? [ $# -ne 1 ] && exit 1 -# Flags fuer "ps" ermitteln +# detect flags for "ps" and "head" if [ `uname` = "FreeBSD" ]; then PS_FLAGS="-a"; PS_PIDCOL="1"; HEAD_FLAGS="-n 1" elif [ `uname` = "A/UX" ]; then PS_FLAGS="-ae"; PS_PIDCOL="1"; HEAD_FLAGS="-1" +elif [ `uname` = "GNU" ]; then + PS_FLAGS="-ax"; PS_PIDCOL="2"; HEAD_FLAGS="-n 1" else PS_FLAGS="-f"; PS_PIDCOL="2"; HEAD_FLAGS="-n 1" ps $PS_FLAGS > /dev/null 2>&1 if [ $? -ne 0 ]; then PS_FLAGS="a"; PS_PIDCOL="1"; fi fi -# PID ermitteln +# debug output +#echo "$0: PS_FLAGS=$PS_FLAGS" +#echo "$0: PS_PIDCOL=$PS_PIDCOL" +#echo "$0: HEAD_FLAGS=$HEAD_FLAGS" + +# search PID ps $PS_FLAGS > procs.tmp -cat procs.tmp | grep "$1" | awk "{print \$$PS_PIDCOL}" | sort -n > pids.tmp +cat procs.tmp | grep -v "$0" | grep "$1" | awk "{print \$$PS_PIDCOL}" | sort -n > pids.tmp pid=`head $HEAD_FLAGS pids.tmp` rm -rf procs.tmp pids.tmp -# ermittelte PID validieren +# validate PID [ "$pid" -gt 1 ] > /dev/null 2>&1 [ $? -ne 0 ] && exit 1 |